文件和目录命令
ls 命令最基本的形式会显示当前目录下的文件和目录
-F 参数在目录名后加了正斜线(/),以方便用户在输出中分辨它们。类似地,它会在可执行文件(比如上面的my_script文件)的后面加个星号,以便用户找出可在系统上运行的文件
-R 参数是递归选项。它列出了当前目录下包含的子目录中的文件。
-l 参数会产生长列表格式的输出,包含了目录中每个文件的更多相关信息。
ls 命令还支持在命令行中定义过滤器进行简单文本匹配。ls 命令能够识别标准通配符(问号(? )代表一个字符;星号(* )代表零个或多个字符)。例如:$ ls -l my*
可以使用中括号表示一个字符位置并给出多个可能的选择,例如字母范围[a - i]。$ ls -l f[a-i]ll
另外,可以使用感叹号(!)将不需要的内容排除在外。
$ ls -l f[!a]ll
-rw-rw-r-- 1 christine christine 0 May 21 13:44
fell
-rw-rw-r-- 1 christine christine 0 May 21 13:44
fill
-rw-rw-r-- 1 christine christine 0 May 21 13:44
Full
处理文件命令
touch 命令创建空文件或改变文件的修改时间。这个操作并不需要改变文件的内容。
cp 命令复制文件,需要两个参数——源对象和目标对象。如果目标文件已经存在,cp 命令可能并不会提醒这一点。最好是加上-i 选项,强制shell询问是否需要覆盖已有文件。
$ cp -i test_one test_two
cp: overwrite 'test_two'? n
如果不回答y ,文件复制将不会继续。
-R 参数在一条命令中递归地复制整个目录的内容。也可以在cp 命令中使用通配符。
在使用命令行输入文件名或目录名时按一下制表键,shell可以将剩下的文件名自动补充完整。
mv 命令可以将文件和目录移动到另一个位置或重新命名。和cp 命令类似,也可以在mv 命令中使用-i 参数。这样在命令试图覆盖已有的文件时,你就会得到提示。
bash shell中删除文件的命令是rm 。文件一旦删除,就无法再找回。
-i命令参数提示你是不是要真的删除该文件。
如果要删除很多文件且不受提示符的打扰,可以用-f 参数强制删除。
处理目录命令
mkdir 命令创建目录
-p 参数可以根据需要创建缺失的父目录,例如:$ mkdir -p New_Dir/Sub_Dir/Under_Dir
rmdir删除目录命令,默认情况下,rmdir 命令只删除空目录。rmdir 并没有-i 选项来询问是否要删除目录。也可以在整个非空目录上使用rm 命令。-R 参数同样可以递归地删除目录中的文件。
查看文件内容命令
file 命令查看文件类型
cat 命令是显示文本文件中所有数据。
-n 参数会给所有的行加上行号。如果只想给有文本的行加上行号,可以用-b 参数。
$ cat -n test1
1 hello
2
3 This is a test file.
4
5
6 That we'll use to test the cat command.
-T 参数会用^I 字符组合去替换文中的所有制表符。
more 命令是分页工具。会显示文本文件的内容,但会在显示每页数据之后停下来。
less 命令为more 命令的升级版。它提供了一些极为实用的特性,能够实现在文本文件中前后翻动,而且还有一些高级搜索功能。
tail 命令会显示文件最后几行的内容(默认显示文件的末尾10行)。
-n 参数修改所显示的行数。
-f 参数允许你在其他进程使用该文件时查看文件的内容。
head 命令会显示文件开头那些行的内容(默认显示文件前10行的文本).
-n 参数指定想要显示的行数