Linux命令学习

时间:2021-10-11 08:57:37

Linux命令学习

Ubuntu常用快捷键

•Ctrl+Alt+T: 打开终端

Linux命令学习

•Ctrl+Shift+T: 新建标签页

Linux命令学习

•Tab: 终端中命令补全

Linux命令学习

•Alt+数字N: 终端中切换到第N个标签页

Linux命令学习

•↑和↓: 切换命令历史

•Ctrl+D: 键盘输入结束或退出终端

•Ctrl+S: 暂定当前程序,暂停后按下任意键恢复运行

•Ctrl+C: 中断程序运行

•Ctrl+Z: 将当前程序放到后台运行

•Ctrl+A: 将光标移至输入行头

•Ctrl+E: 将光标移至输入行末

•Ctrl+K: 删除从光标所在位置到行末

•Alt+Backspace: 向前删除一个单词

Linux命令

格式为:command [options] [arguments] ,即组成结构为:命令 [选项] [参数]

ls命令:

man ls查看ls用法

Linux命令学习

Linux命令学习

ls和ls .是两条等价的命令,显示是当前目录的内容,可以用ls -a .显示当前目录中的所有内容,包括隐藏文件和目录

Linux命令学习

用ls -i显示文件索引节点号,一个索引节点代表一个文件

Linux命令学习

用ls -t,用文件和目录的更改时间排序

Linux命令学习

man命令

Linux下的帮助指令,通过man指令可以查看Linux中的指令帮助、配置文件帮助和编程帮助等信息

通过man man来查看man的帮助:

Linux命令学习

•常用选项:

-a:在所有的man帮助手册中搜索

-k:根据关键字搜索联机帮助,是一种模糊搜索

-f:关键字精确搜索,等价于whatis指令,显示给定关键字的简短描述信息

-P:指定内容时使用分页程序

-M:指定man手册搜索的路径

•参数:

关键字:指定要搜索帮助的关键字

数字:指定从哪本man手册中搜索帮助

区段1:用户指令

区段2:系统调用

区段3:程序库调用

区段4:设备

区段5:文件格式

区段6:游戏

区段7:杂项

区段8:系统指令

区段9:内核内部指令

区段n:Tcl或Tk指令

尝试一下man printf,man 1 printf,尝试一下man printf,man 1 printf,man 3 printfman 3 printf

Linux命令学习

Linux命令学习

Linux命令学习

可以发现man printf和man 1 printf是查看printf命令,而man 3 printf是查看函数库中的printf函数

使用man -k sort | grep 3,可以更好的找到qsort

Linux命令学习

cheat命令

是在GNU通用公共许可证下,为Linux命令行用户发行的交互式备忘单应用程序。它提供显示Linux命令使用案例,包括该命令所有的选项和简短但尚可理解的功能

ubuntu上没有cheat命令需要自己安装,参考教程

cheat命令的安装过程

1.输入sudo apt-get install pyhton安装pyhton

Linux命令学习

2.输入sudo apt-get install pyhton-pip安装pip

Linux命令学习

3.输入sudo pip install docopt pygments安装所需要的python依赖包

Linux命令学习

4.输入git clone https://github.com/chrisallenlane/cheat.git复制cheat的Git库

Linux命令学习

5.输入cd cheat进入cheat目录

6.输入sudo python setup.py install运行‘setup.py’

Linux命令学习

7.检查是否安装顺利输入cheat -v会显示版本号

Linux命令学习

cheat find

Linux命令学习

Linux命令学习

grep命令 参考资料

grep可以对文件全文检索

•命令格式:grep [options]

•[options]主要参数:

-c:只输出匹配行的计数

-I:不区分大小写(只适用于单字符)

-h:查询多文件时不显示文件名

-l:查询多文件时只输出包含匹配字符的文件名

-n:显示匹配行及行号

-s:不显示不存在或无匹配文本的错误信息

-v:显示不包含匹配文本的所有行

•正则表达式主要参数:

\:忽略正则表达式中特殊字符的原有含义

^:匹配正则表达式的开始行

$:匹配正则表达式的结束行

\<:从匹配正则表达式的行开始

>:到匹配正则表达式的行结束

[ ]:单个字符,如[A]即A符合要求

[ - ]:范围,如[A-Z],即A、B、C一直到Z都符合要求

。:所有的单个字符

*:有字符,长度可以为0

cheat grep

Linux命令学习

Linux命令学习

关于grep -nr xxx /usr/include 命令的使用

grep -nr 这条语句可以用来查找关键字,全文搜索,并且可以直接查找文件内的内容

Linux命令学习

可以通过grep -n main *.c,快速找到main在哪个C文件中并指出在第几行

Linux命令学习

Linux命令学习

find命令

用来在指定目录下查找文件,在当前目录下查找子目录与文件,并将查找到的子目录和文件全部进行显示

Linux命令学习

•命令格式:find pathname -options [-print -exec -ok ...]

•参数:

pathname:所查找的目录路径

print:将匹配的文件输出到标准输出

exec:对匹配的文件执行该参数所给出的shell命令,相应命令的形式为'command' { } \;

ok:以一种更为安全的模式来执行该参数所给出的shell命令

•常用选项:

-name:按照文件名查找文件

-perm:按照文件权限来查找文件

mtime -n +n:按照文件的更改时间来查找文件

-newer file1 ! file2:查找更改时间比文件file1新但比文件file2旧的文件

-type:查找某一类型的文件

-size n:[c] 查找文件长度为n块的文件,带有c时表示文件长度以字节计

-depth:在查找文件时,首先查找当前目录中的文件,然后再在其子目录中查找

查找当前目录下大小大于100K的文件

Linux命令学习

locate命令

locate是神速版本的find

•命令格式:locate [选择参数] [样式]

•命令参数:

-e:将排除在寻找的范围之外

-1:如果是1则启动安全模式,在安全模式下,使用者不会看到权限无法看到的档案

-f:将特定的档案系统排除在外,例如我们没有到必要把proc档案系统中的档案放在资料库中

-q:安静模式,不会显示任何错误讯息

-n:至多显示 n个输出

-r:使用正规运算式 做寻找的条件

-o:指定资料库存的名称

-d:指定资料库的路径

-h:显示辅助讯息

-V:显示程式的版本讯息

搜索week3目录下所有以p开头的文件

Linux命令学习

whereis命令

whereis命令是定位可执行文件、源代码文件、帮助文件在文件系统中的位置。只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)

•命令格式:whereis [-bmsu] [BMS 目录名 -f ] 文件名

•主要参数:

-b:定位可执行文件

-m:定位帮助文件

-s:定位源代码文件

-u:搜索默认路径下除可执行文件、源代码文件、帮助文件以外的其它文件

-B:指定搜索可执行文件的路径

-M:指定搜索帮助文件的路径

-S:指定搜索源代码文件的路径

which命令

which指令会在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果,不同的PATH配置内容所找到的命令是不一样的

•命令格式:which 可执行文件名称

•命令参数:

-n:指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名

-p:与-n参数相同,但此处的包括了文件的路径

-w:指定输出时栏位的宽度

-V:显示版本信息

查找firefox浏览器

Linux命令学习

可以看出使用which firefox的结果更加简洁精确

用户权限管理 参考资料

•who am i指令查看用户

Linux命令学习

•sudo addgroup xxx创建用户组

•sudo useradd -g xxx(用户组名) xxx(用户名)创建一个以xxx为成员的用户组

•sudo adduser xxx新建用户

•su -l指令切换登录用户

•Ctrl+D退出当前用户

•sudo usermod -G sudo xxx为用户添加用户组

•sudo deluser xxx --remove-home删除用户

Linux目录结构及文件基本操作 参考资料

•使用cd ~或者cd /home/<你的用户名> 进入home目录

•使用cd .. 返回上一级目录

•使用cd path 进入到目录

•使用cd . 进入到当前目录

•touch test 新建空白文件(不会覆盖同名文件)

•mkdir xxx 新建目录

•mkdir -p father/son/grandson 同时创建父目录

•cp test father/son 复制test到目录

•cp test testcopy 复制test到另一文件

•cp -r father family 递归复制

•rm test 删除文件test

•rm -r test 不提示直接删除test

•rm -r father/son 不提示直接删除目录

•mv test(源目录文件) Documents(目的目录) 移动文件

•mv file1(旧的文件名) myfile(新的文件名) 重命名文件

•使用cat,tac和nl命令查看文件:

cat test 正序显示

cat -n test 显示行号

cat -nl test 添加行号并打印

•使用more和less命令分页查看文件:

more test

Enter键向下滚动一行

Space键向下滚动一 屏

按下h显示帮助,q退出。

•使用head和tail命令查看文件:

只查看头几行(默认为10行,不足10行则显示全部)和尾几行

tail test

tail -n 1 test 只看1行

•查看文件类型

file /bin/ls

•编辑文件

vi

文件打包和解压缩 参考资料

.tar

解包:tar -xvf FileName.tar

打包:tar -cvf FileName.tar DirName

Linux命令学习