0. 开启自动补全
打开终端,输入:
nano .inputrc
在里面粘贴上以下语句:
set completion-ignore-case on set show-all-if-ambiguous on TAB: menu-complete
Control
+ O
,保存,重启终端,OK!
此后输入命令或者文件名时,按 Tab
键可进行自动补全
1. cd(change directory)
打开一个文件夹
cd /proj/ #打开home目录
cd GE3/ #打开一般文件夹
cd - #返回刚才的目录
cd .. #返回上一级目录
cd ../.. #返回上两级目录
cd / #返回根目录
cd
cd ~ #返回home目录
2. evince
evince xx.pdf #打开PDF文件
3. libreoffice
libreoffice xx.ppt #打开办公文件
4. 复制粘贴
复制文件名 左键双击
粘贴剪贴板内容 中键
5. man
man cd #查找命令行的说明文件
6. clear
也可以用 CTRL
+ L
完成
clear #清屏
7. history
history #显示历史命令
8. 时间相关
date #显示当前日期、时间
cal #显示当前日历
cal 03 1996 #显示指定月份的日历
9. whoami(who am I)
whoami #显示当前用户,目录位置
10. pwd(print working directory)
pwd #显示当前目录位置
11. list(list files)
ls #列出该目录下的文件名
ls -a #列出全部文件,包含以. 为开头的隐藏文件
ll #列出该目录下的文件名及详细信息
12. mkdir(make directory)
mkdir dir1 #在当前目录下新建一个名为dir1的文件夹
mkdir -p dir1/dir2/dir3/
#在当前目录下创建一个路径不存在的目录dir3
mkdir ~/dir1 #在home目录下创建一个名为dir1的文件夹
13. rm(remove)
rm f1 #删除f1文件
rm -i f1 #删除前逐一询问确认
rm -f f1 #即使f1文档的属性为只读,也直接删除,不进行确认
rm -r dir1 #将dir1目录及下层的文档全部删除
rm -rf f1 dir1 #将该目录下的f1文件和dir1目录一并删掉
14. cp(copy)
cp /dir1/dir2/dir3/ /dirA/dirB/dirC/
#将dir3目录复制到dirC目录中
cp /dir1/dir2/f1/ /dirA/dirB/dirC/
#将f1文件复制到dirC目录中
cp -r /dir1/dir2/dir1/ /dirA/dirB/dirC/
#将dir3目录及下层文件全部复制到dirC目录中
15. mv(move file)
mv dir1 dir2 #当文件夹中不含dir2目录时,将dir1目录直接修改为dir2
mv dir1 dir2 #当文件夹中含dir2目录时,将dir1存放在dir2的下层
16. ln(link files)
ln -s /dir0/dir1/f1 /dir0/dir2/f2
#建立f1->f2的软连接(符号连接),f2相当于一个快捷方式,源文件f1被删除后随即失效
ln /dir0/dir1/f1 /dir0/dir2/f3
#建立f1->f3的硬连接,f3是f1的另一个地址,源文件f1被删除后依然可用
17. chmod(change mode)
# | 权限 | rwx | 二进制 |
---|---|---|---|
7 | 读 + 写 + 执行 | rwx | 111 |
6 | 读 + 写 | rw- | 110 |
5 | 读 + 执行 | r-x | 101 |
4 | 只读 | r-- | 100 |
3 | 写 + 执行 | -wx | 011 |
2 | 只写 | -w- | 010 |
1 | 只执行 | --x | 001 |
0 | 无 | --- | 000 |
chmod ug+w,o-w f1.pdf f2.txt
#文件f1,f2设定拥有者(u, user),同组(g, group)可写入,其他人(o, others)不可写入
chmod u+x f1.pdf #为文件f1拥有者增加可执行权限
chmod -R a+r * #将当前目录下的所有文件与子目录设为所有人(a, all)可读取
chmod ug=rwx,o=x f1.pdf
#为u和g设置所有权限,为o设置可执行权限
chmod 754 f1.pdf
#为所有人设置默认权限,其中u拥有所有权限(7=rwx),g拥有两种权限(5=r+x),o有一种权限(4=r)
18. grep
grep dayede *txt #查找此目录下后缀为txt的文件中包含dayede字符串的文件,并列出来
grep dayede xingchen* #查找此目录下前缀为xingchen的文件中包含dayede字符串的文件,并列出来。*为通配符,还可以用*chen*查找命名包含chen的文件
grep -r dayede /dir1/dir2/dir3
#寻找dir3目录及其子目录下所有内部包含字符串dayede的文件,并打印出该字符串所在行的内容
grep -n '2020-03-02 13:01:01' *.log
#查找的字符串中间有空格必须用单引号括住
19. cat(concatenate)
cat aa.txt bb.txt #一次性将文件aa和bb的内容打印到屏幕上
cat -n aa.txt #将文件aa打印内容的前面加上行号
cat -n aa.txt > bbaa.txt
#将aa.txt的内容加上行号添加到bbaa.txt中,应注意bbaa.txt在cat之前不存在
cat -b aa.txt dd.txt >> aadd.txt
#将aa.txt bb.txt的内容整合在aadd.txt中,应注意aadd.txt在cat之前已存在
20. sed
sed ‘/./=’ aa.txt | sed 'N;s/\n//'
#sed主要通过脚本对文本文件处理,主要用来自动编辑一个或多个文件、简化对文件的反复操作,编写转换程序等,上面这行命令主要是起到为aa.txt文件中的文本添加行号
21. awk
awk '!($0 in array) {array[$0]; print}' aa.txt
#awk也是一种文本文件处理类的工具,上面这条命令主要用于删除aa.txt中的重复行