Linux常用命令
命令的本质
文件处理命令
ls
语法格式: ls [参数] [文件名]
功能: 显示目录中文件及其属性信息
常用选项:
file
语法格式: file [参数] 文件名
功能: 用于识别文件类型,也可以用来辨别一些内容的编码格式。
常用选项:
mkdir
语法格式: mkdir [参数] 目录名
功能: 创建目录文件
常用选项:
touch
语法格式: touch [参数] 文件名
功能: 创建空文件与修改时间戳
常用选项:
grep
语法格式: grep [参数] 文件名
功能: 强大的文本搜素工具
常用选项:
dd
语法格式: dd 参数 对象
功能: 用于拷贝及转换文件,从一个文件或设备读取数据,并将其写入另一个文件或设备。
find
语法格式: find [路径] [条件] 文件名
功能: 用于根据给定的路径和条件查找相关文件或目录
常用选项:
rm
语法格式: rm [参数] 文件名
功能: 删除文件或目录
常用选项:
rm file.txt
:删除名为file.txt
的文件rm -r directory
:删除名为directory
的目录及其内容rm -f file.txt
:强制删除名为file.txt
的文件,无需确认rm -i file.txt
:交互式地删除名为file.txt
的文件,需要确认
rmdir
语法格式: rmdir [参数] 目录名
功能: 删除空目录文件
常用选项:
rmdir directory
:删除名为directory
的空目录rmdir -p directory/subdirectory
:递归地删除名为directory
的目录及其所有空子目录rmdir --ignore-fail-on-non-empty directory
:忽略非空目录的错误,仅删除空目录
cp
语法格式: cp [参数] 源文件名 目标文件名
功能: 复制文件或目录
常用选项:
cp file.txt copy.txt
:将名为file.txt
的文件复制到名为copy.txt
的文件中cp -r directory copy_directory
:将名为directory
的目录及其内容递归地复制到名为copy_directory
的目录中cp -i file.txt directory
:交互式地将名为file.txt
的文件复制到名为directory
的目录中,需要确认
mv
语法格式: mv [参数] 源文件名 目标文件名
功能: 用于对文件进行剪切和重命名操作
常用选项:
diff
语法格式: diff [参数] 文件名1 文件名2
功能: 比较文件内容差异
常用选项:
echo
语法格式: echo [参数] 字符串或$变量名
功能: 用于在终端设备上输出指定字符串或变量提取后的值
常用选项:
cat
语法格式: cat [参数] 文件名
功能: 在终端设备上显示文件内容
常用选项:
more
语法格式: more [参数] 文件名
功能: 分页显示文本文件内容
常用选项:
less
语法格式: less [参数] 文件名
功能: 分页显示文件内容
常用选项:
ln
语法格式: ln [参数] 源文件名 目标文件名
功能: 用于为某个文件在另外一个位置建立同步的链接,也就是创建快捷方式
常用选项:
head/tail
语法格式: head/tail [参数] 文件名
功能: 显示文件开头的内容/查看文件尾部内容
常用选项:
stat
语法格式: stat [参数] 文件名
功能: 显示文件的状态信息
常用选项:
tree
语法格式: tree [参数]
功能: 以树状图形式列出目录内容
常用选项:
系统管理命令
df
语法格式: df 参数 [对象磁盘/分区]
功能: 显示磁盘空间使用量情况
常用选项:
top
语法格式: top [参数] [对象]
功能: 实时显示系统运行状态
常用选项:
free
语法格式: free [参数]
功能: 显示系统内存使用量情况
常用选项:
quota
语法格式: quota [参数]
功能: 显示磁盘已使用的空间与限制
常用选项:
-v
: 显示更详细的信息。-u
: 指定要查询的用户。-g
: 指定要查询的用户组。
at
语法格式: at [参数] [对象]
功能: 用于设置一次性定时计划任务
常用选项:
-f
: 指定要执行的脚本文件。-t
: 指定任务执行的时间,格式为HH:MM。-d
: 指定任务执行的日期,格式为YYYY-MM-DD。-m
: 执行任务时给用户发送邮件通知。
例如,要在下午3点执行一个命令,可以使用以下命令:·echo "command" | at 3pm
lp
语法格式: lp [参数]
功能: 打印文件或者修改排队的打印任务
常用选项:
-d
: 指定打印机名称。-n
: 指定打印份数。-o
: 指定打印选项,例如双面打印等。-q
: 将打印任务加入打印队列。
例如,lp -d printer1 -n 3 file.txt
会将file.txt
文件发送到printer1
打印机,打印3份。
adduser
语法格式: adduser [参数] 用户名
功能: 创建用户账户
常用选项:
-d, --home <目录>
:指定用户的家目录。-m, --create-home
:创建用户的家目录。-g, --gid <组>
:指定用户所属的主组。-s, --shell <shell>
:指定用户的默认shell。-p, --password <密码>
:指定用户的密码。
userdel
语法格式: userdel [参数] 用户名
功能: 删除用户账户
常用选项:
-r, --remove
:删除用户的家目录和邮件目录。-f, --force
:强制删除用户,即使用户当前已登录或有其他进程仍在运行。
groupadd
语法格式: groupadd [参数] 用户组
功能: 创建新的用户组
常用选项:
-g, --gid <GID>
:指定用户组的GID(组标识符)。-r, --system
:创建一个系统用户组,其GID小于1000。-f, --force
:即使用户组已存在,也强制创建该用户组。
kill
语法格式: kill [参数] 进程号
功能: 用于杀死(结束)进程
常用选项:
- -a 不限制命令名与进程号的对应关系
- -l 显示系统支持的信号列表
- -p 不发送任何信号
- -s 设置向进程发送的信号
cronttab
语法格式: cronttab [参数]
功能: 用于管理定时任务
常用选项:
-e, --edit
:编辑当前用户的定时任务列表。-l, --list
:列出当前用户的定时任务列表。-r, --remove
:删除当前用户的定时任务列表。
uname
语法格式: uname [参数]
功能: 显示系统内核信息
常用选项:
网络操作命令
ifconfig
语法格式: ifconfig [参数] [网卡名] [动作]
功能: 用于配置和显示网络接口的信息
常用选项:
<接口名称>
:指定要显示或配置的网络接口的名称。例如,eth0
表示以太网接口0。-a, --all
:显示所有网络接口的信息,包括未激活的接口。up
:激活指定的网络接口。down
:停用指定的网络接口。
ip
语法格式: ip [参数]
功能: 用于显示与配置网卡参数
常用选项:
address
:配置网络接口的IP地址。link
:配置网络接口的MAC地址和MTU值。route
:配置网络接口的路由表。
ping
语法格式: ping [参数] 域名或IP地址
功能: 用于测试主机间网络连通性,发送出基于ICMP传输协议的数据包,要求对方主机予以回复,若对方主机的网络功能没有问题且防火墙放行流量,则就会回复该信息,我们也就可得知对方主机系统在线并运行正常了。
常用选项:
netstat
语法格式: netstat [参数]
功能: 显示网络状态
常用选项:
-a, --all
:显示所有网络连接和监听端口。-t, --tcp
:显示TCP协议的网络连接。-u, --udp
:显示UDP协议的网络连接。-n, --numeric
:以数字格式显示网络地址和端口号。
telnet
语法格式: telnet [参数] 域名或IP地址
功能: 控制远程设备
常用选项:
<主机>
:指定要连接的远程主机的名称或IP地址。<端口>
:指定要连接的远程主机上的端口号。
ftp
语法格式: ftp [参数] 域名或IP地址
功能: 用于文件传输协议客户端
常用选项:
<主机>
:指定要连接的远程主机的名称或IP地址。-u <用户名>
:指定连接到远程主机时使用的用户名。-p <密码>
:指定连接到远程主机时使用的密码。
route
语法格式: route [参数] [域名或IP地址]
功能: 显示与设置路由信息
常用选项:
-n, --numeric
:以数字格式显示网络地址。-a, --all
:显示所有路由表条目。add <目标网络> <网关> <子网掩码>
:添加一条新的路由表条目。del <目标网络> <网关> <子网掩码>
:删除指定的路由表条目。
rlogin
语法格式: rlogin [参数]
功能: 远端登入
常用选项:
<主机>
:指定要连接的远程主机的名称或IP地址。-l <用户名>
:指定连接到远程主机时使用的用户名。
rcp
语法格式: rcp [参数] [目录]
功能: 远程文件复制,可以使在两台Linux主机之间的文件复制操作更简单。
常用选项:
<本地文件>
:指定要复制的本地文件的路径。<远程主机>:<远程路径>
:指定要将文件复制到的远程主机和路径。
finger
语法格式: finger [参数] 用户名
功能: 查询其他使用者的资料
常用选项:
<用户名>
:指定要查看信息的用户的登录名。-s
:显示用户的计划任务。-l
:显示用户的详细信息。
语法格式: mail [参数] [对象]
功能: 发送和接收邮件
常用选项:
mail
:启动交互式邮件客户端mail -s "Subject" recipient@example.com < message.txt
:通过电子邮件发送一条消息mail -f /var/spool/mail/username
:查看用户的收件箱mail -u username
:查看用户尚未读取的邮件mail -H
:显示邮件头信息mail -q
:列出邮件队列mail -r sender@example.com recipient@example.com
:发送带有指定发件人地址的电子邮件
nslookup
语法格式: nslookup [参数] 域名或IP地址
功能: 查询域名服务器信息
常用选项:
系统安全命令
passwd
语法格式: passwd [参数] 用户名
功能: 修改用户的密码值
常用选项:
passwd
:更改当前用户的密码passwd username
:更改指定用户的密码passwd -l username
:锁定指定用户的密码,禁止该用户登录系统passwd -u username
:解锁指定用户的密码,允许该用户登录系统passwd -d username
:删除指定用户的密码,允许该用户无需密码登录系统passwd -e username
:强制指定用户在下次登录时更改密码
su
语法格式: su [参数] 用户名
功能: 切换用户身份
常用选项:
su
:切换到root
用户su - username
:切换到指定用户,同时加载该用户的环境变量su -l username
:与su - username
命令相同,但更简短su -c command
:使用另一个用户身份执行指定命令su -s /bin/sh username
:切换到指定用户,并将其默认 shell 设置为/bin/sh
umask
语法格式: umask [参数] [权限掩码]
功能: 管理权限掩码
常用选项:
umask
:显示当前用户的默认掩码umask 022
:将当前用户的默认掩码设置为022
,表示新文件和目录的权限为rwxr-xr-x
umask -S
:以符号形式显示当前用户的默认掩码umask -S u=rwx,g=rx,o=rx
:将当前用户的默认掩码设置为u=rwx,g=rx,o=rx
,表示新文件和目录的权限为rwxr-xr-x
umask -p 022
:将当前用户的默认掩码设置为022
,并显示更改后的权限
chgrp
语法格式: chgrp [参数] 目录名
功能: 更改文件所属用户组
常用选项:
chgrp groupname filename
:将指定文件的所属用户组更改为groupname
chgrp -R groupname dirname
:将指定目录及其子目录中所有文件的所属用户组更改为groupname
chgrp --reference=filename1 filename2
:将filename2
的所属用户组设置为与filename1
相同的用户组chgrp -v groupname filename
:显示详细输出,指示成功更改了文件的所属用户组
chmod
语法格式: chmod 参数 文件名
功能: 改变文件或目录权限
常用选项:
chmod permissions filename
:将指定文件的权限更改为permissions
chmod -R permissions dirname
:将指定目录及其子目录中所有文件的权限更改为permissions
chmod u+x filename
:将指定文件的所有者添加可执行权限chmod g-w filename
:将指定文件的所属用户组去掉写权限chmod o=r filename
:将指定文件的其他用户添加只读权限chmod a=rwx filename
:将指定文件的所有用户添加读、写、执行权限
chowm
语法格式: chown [参数] 所属主:所属组 文件名
功能: 改变文件或目录的用户和用户组
常用选项:
chown user filename
:将指定文件的所有者更改为user
chown user:group filename
:将指定文件的所有者更改为user
,并将所属用户组更改为group
chown -R user:group dirname
:将指定目录及其子目录中所有文件的所有者更改为user
,并将所属用户组更改为group
chown user: filename
:将指定文件的所属用户组更改为user
chown :group filename
:将指定文件的所属用户组更改为group
chattr
语法格式: chattr 参数 文件名
功能: 更改文件隐藏属性
常用选项:
chattr +i filename
:将指定文件设置为不可修改,不可删除,不可重命名chattr -i filename
:取消指定文件的不可修改属性chattr +a filename
:将指定文件设置为只能追加内容,不能覆盖或删除已有内容chattr -a filename
:取消指定文件的只追加属性
sudo
语法格式: sudo [参数] 命令
功能: 用于授权普通用户执行管理员命令。
常用选项:
sudo command
:以超级用户或其他用户的身份执行command
sudo -u user command
:以指定用户的身份执行command
sudo -s
:以超级用户身份打开一个新的 shellsudo -i
:以超级用户身份打开一个新的 shell,并将当前工作目录更改为超级用户的主目录
who
语法格式: who [参数]
功能: 查看当前登录用户信息
常用选项:
其他命令
tar
语法格式: tar 参数 压缩包名 [文件或目录名]
功能: 压缩和解压缩文件
常用选项:
unzip
语法格式: unzip [参数] 压缩包名
功能: 解压缩zip格式文件
常用选项:
gunzip
语法格式: gunzip [参数] 压缩包
功能: 解压提取文件内容
常用选项:
gunzip file.gz
:将名为file.gz
的文件解压缩,并将解压缩后的文件保存为file
gunzip -c file.gz > newfile
:将名为file.gz
的文件解压缩,并将解压缩后的内容输出到名为newfile
的新文件中gunzip -r directory
:递归解压缩指定目录下的所有.gz
文件
unarj
语法格式: unarj [参数] [.arj压缩文件]
功能: 解压.arj文件
常用选项:
unarj file.arj
:将名为file.arj
的文件解压缩到当前目录中unarj -d directory file.arj
:将名为file.arj
的文件解压缩到指定的directory
目录中unarj -v file.arj
:以详细模式显示名为file.arj
的文件的解压缩过程
mtools
语法格式: mtools [参数]
功能: mtools为MS-DOS文件系统的工具程序,可模拟许多MS-DOS的指令。这些指令都是mtools的符号连接,因此会有一些共同的特性
常用选项:
mdir
:显示指定目录中的文件列表mcopy
:将文件从 Linux 文件系统复制到 MS-DOS 文件系统,或将文件从 MS-DOS 文件系统复制到 Linux 文件系统mdel
:删除 MS-DOS 文件系统中的文件mformat
:格式化 MS-DOS 文件系统上的磁盘mlabel
:为 MS-DOS 文件系统上的磁盘设置卷标
man
语法格式: man [参数] 对象
功能: 查看帮助信息
常用选项:
man command
:查看名为command
的命令的手册页man -k keyword
:搜索包含关键字keyword
的所有手册页man -f command
:显示名为command
的命令的简短描述man -a command
:显示名为command
的命令的所有手册页
uudecode
语法格式: uuencode [参数]
**功能:**将uuencode编码后的档案还原,uudecode只会将begin与end标记之间的编码资料还原,程序会跳过标记以外的资料。
常用选项:
uudecode file.txt
:将名为file.txt
的 uuencode 编码文件解码为二进制文件uudecode -o output.bin file.txt
:将名为file.txt
的 uuencode 编码文件解码为名为output.bin
的二进制文件cat file.txt | uudecode
:从标准输入读取 uuencode 编码的数据,并将其解码为二进制文件
bc
语法格式: bc [参数]
功能: 数字计算器,相当于windows的计算器
常用选项:
cal
语法格式: cal [参数] [对象]
功能: 显示系统月历与日期
常用选项:
date
语法格式: date [参数] [对象]
功能: 显示或设置系统日期与时间
常用选项: