0
点赞
收藏
分享

微信扫一扫

Linux终端命令

向上的萝卜白菜 2022-05-02 阅读 133

Linux终端命令

前言

Linux常用命令
Linux中,以.开头的文件为隐藏文件

一、终端窗口字体显示

放大终端窗口的字体显示:Ctrl + shift + =
缩小终端窗口的字体显示:Ctrl + -

二、Linux终端命令格式

目标:了解终端命令格式

1.终端命令格式

command [-options] [parameter]
说明: command:命令名,
-options:选项,可用来对命令进行控制,也可以省略
parameter:传递给命令的参数,可以是零个,一个,多个
[]代表可选

2.查阅命令帮助信息(知道)

2.1 --help

命令:*** --help
说明:显示***命令的帮助信息

2.2 man

命令:man ***
说明:查阅***命令的使用手册
man是manual的缩写,是Linux提供的一个手册,包含了绝大部分的命令、函数的详细使用说明

使用man时的操作键:
空格键:显示手册的下一屏
Enter键:一次滚动手册页的一行
b:回滚一屏
f:前滚一屏
q:退出
/word:搜索word字符串

三、Linux最常见七个命令

1.查看当前文件夹下内容

命令:ls
对应英文:list

2.查看当前所在文件夹

命令:pwd
对应英文:print work directory

3.切换文件夹

命令:cd 目录名]
对应英文:change directory

4.如果文件夹不存在,新建文件

命令:touch 目录名
对应英文:touch

5.创建目录

命令:mkdir 目录名
对应英文:make directory

6.删除指定的文件名

命令:rm 文件名
对应英文:remove

7.清屏

命令:clear
对应英文:clear

四、文件和目录常用命令

4.1查看目录内容:ls

ls常用选项:
-a:显示指定目录下所有子目录与文件,包括隐藏文件
-l:以列表的方式显示文件的详细信息
-h:配合-l人性化的显示文件的大小:ls -l -h 或者 ls -lh

ls通配符的使用:
*:代表任意个数个字符
?:代表任意一个字符,至少一个
[]:表示可以匹配字符组中任意一个
[abc]:匹配a、b、c中任意一个
[a-f]:匹配a到f之间任意一个

4.2切换目录:cd

cd ~ 或者 cd (cd 空格):切换到当前用户的主目录
cd . :保持在当前目录不变
cd…:切换到上级目录
cd-:可以在最近工作的两次目录中来回切换

4.3创建和删除操作:touch(创建文件)、mkdir(创建目录)、rm(删除)

touch:创建文件或修改文件时间
如果文件不存在,可以创建一个空白文件
如果文件已经存在,可以修改文件的末次修改日期

mkdir:创建一个新的目录
mkdir -p:可以递归创建目录

注意:新建的目录不能与当前目录中已存在的目录或文件重名

rm:删除文件或目录

注意:rm删除文件后不能恢复

rm -f:强制删除,忽略不存在的文件,无需提示
rm -r:递归的删除目录下的内容,删除文件夹时必须加此参数

4.4拷贝和移动文件:cp(拷贝)、mv(移动)、tree

tree 目录名:以树状图列出文件目录结构
tree -d:只显示目录

cp 源文件 目标文件:复制文件或者目录
cp -f:已经存在的目录或文件直接覆盖,不会提示
cp -i:覆盖文件前提示
cp -r:若给出的源目录是目录文件,则cp,将递归赋值该目录下的所有子目录和文件,目标文件必须为一个目录名

mv 源文件 目标文件:移动文件或者目录/文件或者目录重命名
mv -i:覆盖文件前提示

4.5查看文件内容:cat、more、grep

cat:查看文件内容,创建文件、文件合并、追加文件内容,它会一次性显示所有内容,适合查看内容较少的文本文件
cat -b:对非空输出行编号
cat -n:对输出的所有行编号
在Linux中nl与cat -b效果等价

more:用于分屏显示文件内容,每次只显示一页内容,适合于查看内容较多的文本文件
使用more之后的操作键:
空格:显示手册页的下一页
entry键:一次滚动手册页的一行
b:回滚一屏
f:前滚一屏
q:退出
/word:搜索word字符串

grep:允许对文本文件进行模式查找,所谓模式查找,又被称为正则表达式
Linux中grep是一个强大的文本搜索工具
grep -n:显示匹配行和行号
grep -v:显示不包含匹配文本的所有行
grep -i:忽略大小写
参数:^a:行首,搜寻以a开头的行
ke$:行尾,搜寻以ke结尾的行

4.6其他:echo、重定向>和>>、管道 |

echo:会在终端中显示参数指定的文字,通常会和重定向联合使用

重定向>和>>:Linux允许将命令执行结果重定向到一个文件
将本应显示在终端上的内容 输出/追加 到指定文件中

其中:>:表示输出,会覆盖原有文件的内容
>>:表示追加,会将内容追加到已有文件末尾

管道 | :Linux允许将一个命令的输出可以通过管道做为另一个命令的输出

| more:分屏显示内容
| grep:在命令执行结果的基础上查询指定的文本

五、远程管理常用命令

5.1 关机/重启:shutdown

命令:shutdown 选项 时间
shutdown -r:重新启动。
注意:不指定选项和参数,默认一分钟后关闭电脑
shutdown -c:取消自动关机
shutdown +10:十分钟后关机
shutdown 20:25:晚上八点二十五关机

5.2 查看或配置网卡信息:ifconfig,ping

命令:ifconfig:查看/配置计算机当前的网卡配置信息
ping ip地址:检测到目标IP地址的连接是否正常

5.3 远程登录和复制文件

命令:ssh 用户名@ip:
ssh -p port user@remote:
user是在远程机器上的用户名,如果不指定的话默认为当前用户
remote是远程机器的地址,可以是ip/域名,或者是别名
port是SSH Server 监听的端口,如果不指定就是默认值22
ssh 用户名@ip:文件名或路径 用户名@ip:文件名或路径:远程复制文件

scp:远程拷贝文件,它的地址格式和SSH大致相同。
scp -P:若远程SSH服务器的端口号不是22,需要使用-P选项指定端口
例如:将当前目录下的01.py文件复制到本地当前目录下的Desktop/01.py
scp -P port 01.py user@remote:Desktop/01.py
scp -r:若给出的源文件是目标文件,则scp将递归复制该目录下的子目录和文件,目标文件必须为一个目录名。

六、用户权限

6.1 chmod:修改用户/组对文件/目录的权限

命令格式:chmod +/- rwx 文件名/目录名

6.2 组管理

groupadd 组名:添加组
groupdel 组名:删除组
cat /etc/group:确认组信息
chgrp -R 组名 文件/目录名:递归修改文件/目录名所属组

6.3 用户管理

useradd -m -g 组 新建用户名:添加新用户
-m:自动建立用户家目录
-g:指定用户所在的组,否则会建立一个和家目录同名的组

passwd 用户名:设置用户密码
如果是普通用户,直接用passwd可以直接修改自己的密码

userdel -r 用户名:删除用户
-r选项会自动删除用户的家目录

cat /etc/passwd | grep 用户名:确认用户信息
新建用户后,用户信息会保存在/etc/passwd文件中

6.4 查看用户信息

id 用户名:查看用户UID和GID信息
who:查看当前所有登录的用户列表
whoami:查看当前登录用户的账号名

usermod:可以用来设置用户的主组/附加组和登录shell,命令格式如下:
主组:通常在新建用户时指定,在/etc/passwd的第四列GID对应的组
附加组:在/etc/passwd中最后一列表示该组的用户列表,用于指定用户的附加权限

提示:设置了用户的附加组之后,需要重新登录才能生效。

usermod -g 组 用户名:修改用户的主组(passwd中的GID)
usermod -G 组 用户名:修改用户组的附加组
usermod -s /bin/bash:修改用户登录 Shell

注意:默认使用useradd添加的用户是没有权限使用sudo以root的身份执行命令的,可以使用下面的命令,将用户添加到sudo的附加组中
usermod -G sudo 用户名

which:which命令可以查看执行命令所在的位置,例如:
which ls:输出:/bin/ls

6.5 切换用户

su - 用户名:切换用户,并切换目录,-可以切换到用户家目录,否则保持位置不变
su不接用户名,可以切换到root

exit:退出当前登录账户

6.6 修改文件权限

chown 用户名 文件名|目录名:修改文件|目录的拥有者
chgrp -R 组名 文件名|目录名:递归修改文件|目录的组
chmod -R 755 文件名|目录名:递归修改文件权限(r:读——4,w:写——2,x:执行——1。7=4+2+1(可读可写可执行),5(可读可执行))
chmod在设置权限时,可以简单用三个数字分别对应拥有者/组和其他用户的权限

七、系统信息相关命令

7.1 时间和日期

date:查看系统时间
cal:查看日历,-y选项可以查看一年的日历

7.2 磁盘和目录空间

df:df -h:disk free 显示磁盘剩余空间 -h:以人性化的方式显示文件大小
du:du -h 目录名(目录名没有默认当前目录):disk usage 显示目录下的文件大小

7.3 进程信息

ps aux:process status 查看进程的详细状况
ps默认只会显示当前用户通过终端启动的应用程序
选项含义:
a:显示终端上的所有进程,包括其他用户的进程
u:显示进程的详细状态
x:显示没有控制终端的进程

top:动态显示运行中的进程并且排序
要退出top,直接输入q

kill [-9] 进程代号:终止指定代号的进程,-9表示强行终止。[]表示里面内容可以省略
提示:使用kill命令时,最好只终止由当前用户开启的进程,而不用终止root用户开启的进程,否则可能导致系统崩溃

八、其他命令

8.1 查找文件

find:通常用来在特定目录下搜索符合条件的文件
find [路径] -name “*.py”:查找指定路径下拓展名是.py的文件,包括子目录
如果省略路径,表示在当前文件夹下查找

8.2 软链接

ln -s 被链接的源文件 链接文件:建立文件的软链接,用通俗的方式讲就是Windows下的快捷方式
注意:没有-s建立的是硬链接文件
硬链接:
在Linux中,文件名和文件数据是分开存储的。
硬链接是文件的另外一个名字,文件名相当于一个指针,指向了文件数据,硬链接就是另一个指针,也指向了文件数据,删除文件,只是删除了文件名这个指针,但硬链接还是指向该文件数据,使用文件数据并没有删除,只是删除了文件名。

8.3 打包和压缩

8.3.1 打包

tar是Linux中最常用的备份工具,此命令可以把一系列文件打包到一个大文件中,也可以把一个打包的大文件恢复成一系列文件
tar -cvf 打包文件.tar 被打包文件/路径…:打包文件
tar -xvf 打包文件.tar:解包文件
选项说明:
c:生成档案文件,创建打包文件
x:解开档案文件
v:列出归档解档的详细过程,显示 进度
f:指定档案文件名称,f后面一定是.tar文件,所以必须放在选项最后
注意:只有f必须放在选项最后,其他选项顺序可以随意

8.3.2 压缩

1)gzip
用gzip压缩tar打包后的文件,文件后缀一般是.tar.gz
在tar命令中有一个选项-z可以调用.gzip,从而可以很方便的实现压缩和解压缩的功能

tar -zcvf 打包文件.tar.gz 被压缩的文件/路径…:压缩文件
tar -zxvf 打包文件.tar.gz:解压文件
tar -zxvf 打包文件.tar.gz -C 目标路径:解压缩到指定路径
-C:解压缩到指定目录,注意:要加压缩的目录必须存在

2)bzip2(读法:bzip two)
用法都和gzip一致
在tar命令中有一个选项-j可以调用bzip2,从而可以方便的实现压缩和解压缩的功能

tar -jcvf 打包文件.tar.bz2 被压缩的文件/路径…:压缩文件
tar -jxvf 打包文件.tar.bz2:解压文件

8.4 软件安装

apt是Advanced Packaging Tool,是Linux下的一款安装包管理工具,可以在终端中方便的卸载/安装/更新软件包

sudo apt install 软件包:安装软件
sudo apt remove 软件名:卸载软件
sudo apt upgrade:更新已安装的包

举报

相关推荐

0 条评论