记录一下最近遇到的一个问题,就是用mac电脑,在python里读取excel的表格数据时,路径该怎么写?
就比如:
import pandas as pd
data = pd.read_excel("???????????")
(我知道这是一个很弱智的问题。。但我真的困惑了很久。。尝试了很多种途径。。)
后来终于知道可以去终端里查路径。
比如,我的excel放在了桌面,就可以在终端里:
先输入:cd desktop
再输入:ls
如果这个地方看到了文件,就再输入:pwd
就能看到地址了。
然后我发现,终端是个很神奇的地方,因为之前用windows,不知道用mac要了解一下终端的操作。
所以我就想做个笔记记录一下终端的一些东西。
终端就是连接内核与交互界面的这座桥,它允许用户在交互界面上打开一个叫做「Terminal 终端」的应用程序,在其中输入命令,系统会直接给出反馈。它实际允许用户间接控制系统内核,也就是系统的大脑,因此它理论上具备控制一切的权利。
当你打开它时,终端将显示一个文本屏幕,默认情况下用你的OS X用户帐户登录。
以下是重要的部分:使用系统管理员帐户和密码,您可以直接调整计算机软件代码的几乎所有内容; 这意味着,虽然这个小窗户提供了很大的权力,但它带来了很大的责任。
总之,在使用终端执行命令之前要小心,并确保你明白你在输入什么!!!
(注意:在终端中编写命令和路径时,几乎所有内容都是区分大小写的)
终端常用命令指令:
清空屏幕内容:clear
查看所在目录:pwd
回到上一个目录:cd –
回到用户目录(刚打开终端时目录):cd ~
根目录:/
当前目录:./
上一级目录: …/
ls 查看当前目录下的内容
ls / 查看根目录的内容
ls ./ 查看当前目录下的内容
ls ../ 查看父目录下的内容
ls ~ 查看用户目录的内容(打开终端默认在用户目录下)
dd 删除一行(光标所在的那一行) (剪切)
5dd 删除光标下的5行
p 粘贴
yy 复制
5yy 复制5行
u 撤销上一次操作 (undo)
ctrl+r 恢复操作 (redo)
gg 将光标定位在第一行
shift+g 将光标定位到最后一行
num shift+g 将光标定位在第num行
cd 目录 进入目录文件夹
mkdir xxx 创建一个名字为xxx的文件夹
touch yyy 创建一个名字为yyy的文件
vi yyy 如果文件不存在,则创建一个yyy的文件,并打开,如果文件存在,则是打开yyy文件。
rm yyy 删除yyy文件
rm -rf xxx 删除xxx文件夹
mv aaa bbb 将当前目录下得aaa文件,移动到当前目录下,并改名为bbb
cp aaa bbb 将当前目录下得aaa文件,拷贝一份,放到当前目录下,并改名为bbb
终端常用模式:
一般模式
命令模式 (如python3模式等)
:q 退出,(如果文件已经被编辑了,而没有保存的话,是无法退出的)
:w 保存
:wq 保存退出
:q! 不保存退出
:set nu 显示行号
:set nonu 隐藏行号
编辑模式:编辑模式进入一般模式:Esc键
一般模式进入编辑模式:a , I , o , shift + a , shift + I , shift + o
一般模式下
dd 删除一行(剪切) ctrl+x
num dd 删除num行
p 将剪切的内容粘贴到光标所在行下面
ctrl+vyy 拷贝一行 ctrl+c
num yy 拷贝num行
u 撤销 undo
ctrl+r 恢复 redo
gg 定位到第一行
shift+g 定位到最后一行
num shift+g 定位到num行
基于以上的知识点,来举几个实际的例子。
什么是路径?
我们可以使用终端直接访问我们的文件,而无需使用Finder(就比如我想找某个EXCEL表格)。要做到这一点,你建立了一个叫做路径的东西。路径在某些方面看起来与网站子目录相似,并遵循文件夹的结构。
路径有两种形式:绝对路径和相对路径。
绝对路径从硬盘根目录开始,显示为“/”。
例如,想要创建一个到“应用程序”文件夹的路径,可以编写“/ Applications /”。
相对路径是根据我们已经导航到的位置定义的,并以“./”表示。
例如,如果你转到终端中的“/ Applications /”文件夹,那就是你当前的工作目录(cwd)。然后你可以通过输入“./Utilities/”而不是“/ Applications / Utilities”进入你的Utilities文件夹。
当你第一次启动终端,你开始在/ Users / myusername /(也被称为你的用户文件夹)的当前工作目录。
如何在终端中的文件之间显示和移动?
要实际使用所有这些路径知识,我们需要使用终端命令来显示和更改文件。
ls:“ls”命令本身显示cwd的内容。所以如果我只是在终端输入“ls”,它会显示我的用户目录的内容。
如果要查看不同的目录,可以选择添加绝对或相对路径。所以,例如,如果我想查看Applications中的Utilities文件夹,我可以输入“ls / Applications / Utilities /”。这不会改变你当前的工作目录,但它可以让你查看硬盘上的其他目录。
我可以添加选项以查看有关该目录的更多信息。“ls”的选项包括:
1)-l,它允许您查看目录中每个文件的权限;
2)-R,它不仅会显示目录中的每个文件夹,还会显示其所有文件;
3)-a,这将显示当前目录中的任何隐藏文件;
cd:“ls”命令可以让你查看一个目录,“cd”命令实际上会移动到那个目录(改变你的cwd)。例如,如果在查看实用程序文件夹之后,想要移动到该文件夹,则可以键入“cd / Applications / Utilities /”。
pwd:自己写这个命令可以帮助你记住当前目录的路径。当输入到终端时,它将打印你的cwd的完整路径。
综合以上三个操作,我明白了我最开始的困惑,想找桌面上某个EXCEL文件的路径操作了:
先输入:cd desktop - 意思就是移到desktop这个目录下;
再输入:ls - 意思就是查看当前目录下的所有内容;
再输入:pwd - 在这个目录下看到了我要找的文件,输入pwd就帮我打印出了当前的完整路径了。
接着看一些其他操作:
man:这个命令后跟另一个Unix命令,可以让你阅读关于第二个命令的Unix手册。如果你想尝试一下你在网上找到的一个很酷的终端技巧,这是非常有用的,但不知道这些命令实际上做了什么。
例如,输入“man ls”将获得有关“ls”命令的信息,该命令列出目录内容:
如何在终端中修改文件,文件夹和首选项?
默认值:这个命令通常在终端提示和技巧中通过他们的首选项文件来调整应用程序和系统设置。你可以使用它来做一些事情,比如禁用菜单栏的透明度,始终显示滚动条,更改触控板行为等等。您通常会看到与“写入”和字符串配对。
例如,比如你想将所有截图保存为JPG,而不是系统默认的PNG,输入如下的代码:
killall:如果你执行一个影响任何系统进程或应用程序的终端命令,你将需要重启进程才能生效。“killall”之后的过程将这样做。(这也是强制退出行为不当的应用程序或进程,如果你的强制退出菜单不行为的另一种方法。)请记住,此命令及其目标区分大小写:
ln:OS X很早就提供了别名,可以让您在系统中的其他地方创建指向文件,文件夹和应用程序的链接,而无需复制它们。不幸的是,某些应用程序不能很好地处理别名。通过链接命令“ln -s”,您可以创建一个基于UNIX的低级别符号链接,大多数系统进程都可以识别该链接。可能的话,你永远不需要做一个符号链接,但是如果你不想做一个需要它的终端技巧,那么你就是这么做的。下面列出的第一个路径是您原始文件的路径;第二条路是你想要符号链接的地方。
chflags:这个命令让你查看和更改文件或文件夹上的标志。对于大多数人来说,你要关心的唯一标志分别是“隐藏”和“不隐藏”,分别隐藏和取消隐藏文档。
sudo:如果你花时间上网,你可能听说过“sudo”。这是Unix的覆盖命令,可以让你以管理员的身份执行任何命令 - 当然,你有必要的密码和权限。这可能不言而喻,但作为一名终端初学者,除非你百分之百地确定自己在做什么,否则不要混淆像“sudo”这样的命令。
还有一些其他的有趣的操作:
可以使用“say”命令让您的计算机说出任何您喜欢的内容,如果您愿意,还可以将其以音频格式记录到桌面上。
telnet towel.blinkenlights.nl:这在技术上并不是Mac本地的东西,但这是我最喜欢的终端技巧。互联网上的某种灵魂制作了“星球大战:新希望”的全ASCII版本; 运行下面的代码,你将被视为一个完整的显示。如果它不能让你微笑一下,你可能会死在里面。
好了,自己慢慢去探索吧。
感谢阅读,与君共勉。