Linux 常用命令整理

文件、目录类

cd                     # cd 不加任何参数,返回 home 目录
cd -                   # 返回上一次所在目录,并显示其目录名
cd dir                 # 进入到指定目录
pwd                    # 显示当前目录的绝对路径
ls -l                  # 列出文件的详细信息,可简写为 ll
ls | grep "bin"        # 列出包含 "bin" 关键字的文件
mkdir dir              # 创建一个目录
mkdir -p dir/dir       # 创建一个多级目录
mkdir -m 777 dir       # 创建权限为 777 的目录
touch file             # 创建新的空文件
rmdir dir              # 删除空目录
rmdir -p dir/bin       # 删除子空目录 bin 和其父空目录 dir
rm -rf dir/bin         # 删除一个目录中的一个或多个文件或目录, 谨慎使用
rm -rf *.log           # 删除当前目录下所有 ".log" 的文件
find fileName ‐name  *.txt | xargs rm ‐rf   # 将查找出来的文件全部删除, 谨慎使用
cp file dir/file       # 将文件或目录拷贝到另一文件或目录中 
cp ‐R dir1 dir2 /dir   # 拷贝多个目录 (含子目录) 到指定目录
mv dir1 dir2           # 将文件或目录重新命名,或者将文件从一个目录移到另一个目录中

文件查看、处理

cat file                 # 显示文件的内容
cat -n file              # 从1开始对文件的行数编号
cat file1 file2 > file3  # 将文件 file1 和 file2 的内容合并之后放入 file3 中    
head file                # 显示文件的头 10 行内容
tail file                # 显示文件的最后 10 行内容 
tail -f file             # 显示文件最新追加的内容,并监视文件的变化,常用来跟踪日志文件
more file                # 基于vi编辑器文本过滤器,它以全屏幕的方式按页显示文本文件的内容 
less file                # 作用与 more 十分类似, pageUp 向上翻页, pageDown 向下翻页, q 退出 
cat file1 > file2        # 覆盖导入
cat file1 >> file        # 追加导入
wc ‐l [‐m][‐c][‐w] file  # 统计行数、字符数、字节数、单词数

文件查询、搜索

grep keyWord                             # 常与 cat 搭配使用 cat file | grep keyWord
find dir -name "*.log"                   # 搜索指定目录下的 ".log" 文件
find dir -name "*.log" -o -name "*.pid"  # 搜索指定目录下的 ".log" 文件和 ".pid" 文件
find dir -user user1                     # 搜索指定目录下属于 user1 用户的文件

文本编辑 vi 底行模式下

:set nu               # 显示行号
:set nonu             # 不显示行号
:n                    # 跳转到指定第 n 行
:w file               # 另存为
:n1,n2 s/str1/str2/g  # 从 n1 行到 n2 行, 将 str1 替换为 str2
:wq                   # 保存并退出
:q!                   # 强制退出不保存

文本编辑 vi 命令模式下

G                # 到末行
gg               # 到首行
dd               # 删除行
u                # 撤销
yy               # 复制一行
nyy              # 复制 n 行
p                # 粘贴

权限管理

chmod 755 dir/file        # 修改指定文件的权限
chmod ‐R 755 dir          # 递归修改目录及其子文件、目录的权限  
chown user file           # 改变文件的所有者  
chown ‐R user dir         # 改变目录的所有者  
chgrp group1 file         # 改变文件的所有者 
chgrp ‐R group1 dir       # 改变目录的所属组  
chown user1:group1 file   # 同时改变文件的所有者和所属组   
chown ‐R user1:group1 dir # 同时改变目录的所有者和所属组   
whoami                    # 查看当前操作用户  
who                       # 查看当前已登录系统的用户  
id user1                  # 查看用户 user1 的归属 id 信息 

压缩、解压

tar -cvf test.tar test.log      # 仅打包,不压缩
tar -xvf test.tar               # 直接解包
tar -zcvf test.tar.gz test.log  # 打包后,以 gzip 压缩
tar -zcvf test.tar.gz *         # 将当前目录下所有文件压缩
tar -zxvf test.tar.gz           # 直接解压
tar ‐zxvf test.tar.gz ‐C dir    # 解压到新目录,只能是 dir 且已经存在
gzip *                          # 压缩目录下所有文件
gzip -d *                       # 解压缩目录下所有文件
zip test.zip *                  # 将当前目录下所有文件压缩为 zip 包
unzip test.zip                  # 解压缩 zip 包

用户管理

groupadd group1              # 创建组
groupdel group1              # 删除组
groupmod  ‐n group2 group1   # 将 group1 重命名 group2  
useradd user1                # 创建用户
useradd ‐g group1 user1      # 创建 user1 并将其分配到 group1 组下  
userdel ‐r user1             # 删除 user1, "‐r" 参数表示同时也删除 home 目录下的相关目录  
usermod ‐g group2 user1      # 改变 user1 的组为 group2  
usermod ‐G group2 user1      # 将 user1 的添加到 group2 组中来,同时保留原来的主组  
passwd                       # 修改当前用户密码 
passwd user1                 # 修改 user1 用户的密码,仅限 root 用户执行  
su user1                     # 切换到用户 user1 
groups user1                 # 查看用户 user1 所属的组 

网络配置管理

ifconfig -a                  # 查看 ip 信息
ping 127.0.0.1               # 测试主机之间网络的连通性,执行 ping 命令会使用 ICMP 传输协议
ping 192.168.0.1             # 测试从我们的电脑到路由器之间的是否通畅
ping 192.168.0.1 -t -l 65500 # 丢包检查
service network restart      # 重启网络服务 [start , stop]
hostname                     # 查看主机名
netstat -ntlp                # 查询当前系统监听 tcp 端口的进程

远程连接

ssh root@112.74.95.60                      # 远程连接 shell  
logout                                     # 退出连接  
scp ‐r root@112.74.95.60:/user/local/logs  # 远程复制目录,复制文件时不用加 "‐r" 

查看命令帮助

help cd       # 用于内部命令, 如 exit、history、cd、echo 等常驻内存  
ls ‐‐help     # 主要用于外部命令,可通过 "echo $PATH" 命令查看外部命令的存储路径,如 ls,vi 等  
man ls        # 命令手册,可用于所有命令,输入"q"可退出  
type cd       # 查看命令类型,内部 or 外部及命令位置 

系统相关命令

shutdown  ‐h now                    # 立即关机  
shutdown  ‐r now                    # 立即重启  
uname ‐r                            # 查看内核版本   
cal                                 # 日历  
date                                # 时间、日期  
date ‐s "2015‐12‐22 08:00"          # 修改时间  
ntpdate time.nist.gov               # 同步当前时间
history                             # 查看历史命令记录,运行时 "!"+ 命令号,如 !3314 运行 3314 命令  
ps -ef                              # 查看进程  
kill pid                            # 终止进程  
kill ‐9 pid                         # 制终止进程  
top                                 # 查看当前系统资源使用率  
df ‐h                               # 查看磁盘信息  
free ‐m                             # 查看内存信息  
du ‐h file/dir                      # 查看文件/目录大小 ‐h 表示以 K,M,G  
du ‐sh file/dir                     # 查看文件/目录总大小  
mount ‐o loop linux.iso /mnt/dir    # 加载文件系统到指定的加载点
umount /mnt/dir                     # 卸载已经加载的文件系统
rpm ‐ivh xxx.rpm                    # 安装 rpm 包  
rpm ‐e xxx.rpm                      # 卸载 rpm 包 
wget http://url                     # 下载远端 zip 包
echo > fileNme                      # 清空文件内容

发表评论

电子邮件地址不会被公开。 必填项已用*标注