1. pwd--显示当前目录
2. ls--显示文件或目录
-l 列出文件详细信息l(list)
-a 列出当前目录下所有文件及目录,包括隐藏的a(all)
3. cd--切换目录
4. mkdir--创建目录
-p 创建目录,若无父目录,则创建p(parent)
例:如果要创建目录A并创建目录A的子目录B,没有用-p的情况下是mkdir 2次如果用-p 可以直接创建2个目录 mkdir -p 目录A/子目录B就可以。
5. touch--创建空文件
6. echo--创建带有内容的文件或者向文件中写入内容
使用>指令覆盖文件原内容并重新输入内容,若文件不存在则创建文件。例:echo "test" > test.txt
使用>>指令向文件追加内容,原内容将保存。例:echo "test" >> test.txt
7. cat--查看文件内容
-n 由 1 开始对所有输出的行数编号。
$ cat filename 查看文件内容
$ cat > filename 可以创建一个文件
$ cat file1 file2 > filename 将几个文件合并为一个文件
8. cp--复制文件或目录
cp指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到此目录中。
若同时指定多个文件或目录,而最后的目的地并非一个已存在的目录,则会出现错误信息
-u 或 --update 使用这项参数之后,只会在源文件的修改时间(Modification Time)较目的文件更新时,或是名称相互对应的目的文件并不存在,才复制文件
-v 或 --verbose 显示执行过程
-f 或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在
例:cp -u -v file1 file2 复制文件,只有源文件较目的文件的修改时间新时,才复制文件
9. mv--移动或重命名
mv aaa bbb 将文件 aaa 更名为 bbb
mv info/ logs 将info目录放入logs目录中。注意,如果logs目录不存在,则该命令将info改名为logs
mv /usr/student/* . 将/usr/student下的所有文件和目录移到当前目录下
10. rm--删除文件
-r 递归删除,可删除子目录及文件
-f 强制删除
-i 删除已有文件或目录之前先询问用户
例:rm -rf * 删除当前目录下的所有文件
11. rmdir--删除空目录
-p选项:级联删除
例:目录1122/1 rmdir -p -v 1122/1 结果:先删除1122/1,再删除1122。
例:目录1122/1 1122/2 rmdir -p -v 1122/1 结果:删除1122/1,再删除1122时错误,因为此时1122不是空文件夹。
12. find--在文件系统中搜索某文件
find . -name "*.txt" -print 查询当前目录下已.txt结尾的文件并打印出来
13. grep--在文本文件中查找某个字符串
$ grep ‘test’ d* 显示所有以d开头的文件中包含 test的行。
$ grep ‘test’ aa bb cc 显示在aa,bb,cc文件中匹配test的行。
$ grep ‘[a-z]\{5\}’ aa 显示所有包含每个字符串至少有5个连续小写字符的字符串的行。
14. wc--统计文本中行数、字数、字符数
-c 统计字节数
-l 统计行数
-m 统计字符数。这个标志不能与 -c 标志一起使用
-w 统计字数。一个字被定义为由空白、跳格或换行字符分隔的字符串
15. ln--创建链接文件
1.ln命令会保持每一处链接文件的同步性,也就是说,不论你改动了哪一处,其它的文件都会发生相同的变化;
2.ln的链接又软链接和硬链接两种,软链接就是ln -s ** **,它只会在你选定的位置上生成一个文件的镜像,不会占用磁盘空间,硬链接ln ** **,没有参数-s, 它会在你选定的位置上生成一个和源文件大小相同的文件,
无论是软链接还是硬链接,文件都保持同步变化。软链接是可以跨分区的,但是硬链接只能在同一分区内。
3.目录不能建立硬链接,但可以建立软链接
例:ln -s ./script/test.sh test 这样就是在当前目录创建一个指向 ./script/test.sh 脚本的符号链接。
16. more、less--分页显示文本文件内容
more会以一页一页的显示方便使用者逐页阅读,默认一页填充满整个窗口,而且还有搜寻字串的功能 。
而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,只能回退一次,回车往下翻一行,q退出。
more命令从前向后读取文件,因此在启动时就加载整个文件。
+n 从笫n行开始显示
-n 定义屏幕大小为n行
+/pattern 在每个档案显示前搜寻该字串(pattern),然后从该字串前两行之后开始显示
-c 从顶部清屏,然后显示
例:more +3 test.log 从第三行开始显示文件内容
例:more -4 test.log 将日志内容设置为每屏显示4行
例:more +/insert test.log 从文件中查找第一个出现"insert"字符串的行,并从该处前两行开始显示输出
在 more 的时候,我们并没有办法向前面翻, 只能往后面看,但若使用了 less 时,就可以使用 [pageup] [pagedown] 等按 键的功能来往前往后翻看文件,更容易用来查看一个文件的内容!
less 并未在一开始就读入整个档案,所以当浏览文件很大时,使用less更好。
并且less默认从顶部开始显示,不需要清屏,内容填充整个屏幕。使用空格同样可以翻页,b回退一页,回车往下翻一行,q退出。more的-c,-n对less无效
例:less +/insert test.log 从文件中查找出出现"insert"字符串的行,并高亮显示
17. head、tail--显示文件头、尾内容
例:head -100 test.log 指定文件的头100行显示到标准输出。
例:tail -100 test.log 指定文件的尾100行显示到标准输出。
例:tail -100f test.log 指定文件的尾100行显示到标准输出。并即时输出文件变化后追加的数据。