Linux 常用命令速查
系统操作
-
查看信息
- 查看CPU核数、架构等:
lscpu
- 查看内存:
free -g
- 查看系统版本:
lsb_release -a
- 查看主机名:
hostname
- 查看CPU核数、架构等:
-
重启:
sudo shutdown -r now
-
关机:
sudo shutdown -h now
用户操作
-
切换用户:
su - [user_name]
-
exit
或ctrl+D
:登出当前用户 -
创建用户:
-
先创建用户组:
groupadd [user]
-
然后创建用户:
useradd -g [user] -d [home_dir] -s /bin/bash [user]
- -g指定用户组,-d指定家目录,-s指定登录shell
-
恢复用户模板(解决
bash-4.2$
问题):su # 切换到root账户 cp /etc/skel/.bash* /home/[user]/ [root@localhost ~]# chown [user]:[user] /home/[user]/.bash sudo su - [user] # 切回原账户
-
-
删除用户:
userdel -r [user]
-
授权:
chmod xxx dir -R
mode 的三个数字,分别表示owner, group, others所具有的权限:
1 = x(execute) , 2 = w(write), 4 = r(read)比如owner具有所有权限,1+2+4=7, 又比如group 具有读 和执行权限 1+4 = 5
-
更改所有者:
chown -R 用户名[:用户组] 文件名
文件操作
- 创建目录:
mkdir
,创建文件:touch
- 删除:
rm -rf [target]
,移动:mv [source] [target]
- 移动多个文件或目录:
mv [目录] [文件] -t [目标目录]
- 移动多个文件或目录:
- 复制:
cp -a [source] [target]
- 文件压缩(tar)
- 压缩:
tar -zcvf [xxx.tar.gz] [targetfile]
- 查看压缩文件:
tar -tvf [xxx.tar.gz]
- 解压缩:
tar -zxvf [xxx.tar.gz]
- 打包命令中的
-z
参数代表是否使用.gz
格式的压缩协议 - 后面跟上
-C [path]
可以解压文件到指定目录
- 打包命令中的
- 压缩:
- 文件压缩(zip)
- 压缩:
zip -q -r [xxx.zip] [targetfile]
- -q 不显示指令执行过程,-r 递归处理,将指定目录下的所有文件和子目录一并处理
- 查看压缩文件:
zipinfo -1 -M [xxx.zip]
- -1 只显示文件名,-M 以滚动的方式显示超出1页的信息
- 解压缩:
unzip [xxx.zip]
- 后面可以接
-d [dir]
指定解压目录
- 后面可以接
- 压缩:
- 文件压缩(gz)
- 压缩:
gzip -k [targetfile]
- 解压缩:
gzip -dk [targetfile]
- 压缩:
- 创建软链接:
ln -s [指向位置] [当前位置]
- 删除软链接,务必使用:
unlink [软链接文件]
- 删除软链接,务必使用:
- 查看目录和文件大小:
- 限制深度:
du -h --max-depth=1 [可接具体路径]
- 指定文件/目录:
du -hs [path]
- 限制深度:
- 查看磁盘存储空间:
df -h
文本编辑
- 滚动查看:
head -f -n
,tail -f -n
- 打印:
cat
,编辑:vi
程序执行
-
查看CPU资源使用情况:
top
-
查看内存资源使用情况:
free -g
-
让程序进程不受终端关闭影响:
nohup [cmd]
-
让命令在后台执行:
[cmd] &
-
暂停/挂起进程
ctrl+z
:将前台程序放到后台并挂起(暂停)kill -STOP pid
:将指定pid的进程放入后台并挂起kill -CONT pid
:让挂起的进程恢复运行(在后台)
-
查看当前终端后台运行程序:
jobs
bg [num]
,fg [num]
分别表示将任务放到后台/前台执行,[num]
为jobs
中任务前的序号
-
利用关键词查找进程:
ps -ef | grep [keyword] | grep -v "grep"
-
使用重定向解决
nohup.out
文件体积问题:nohup ./xxx >/dev/null 2>&1 &
-
重定向相关:
-
>
覆盖写,>>
追加写,1
标准输出(stdout),2
错误输出(stderr) -
[cmd] >> [file] 2>&1
:把命令的一般输出和错误输出一起(追加)写入指定文件中2>&1
中的>&
代表对输出渠道进行合并
-
[cmd] 2>[file]
:把错误信息写入指定文件中
-
定时任务(crontab)
-
查看定时任务服务进程是否存在:
ps -ax | grep crond
-
示例任务脚本:
#!/bin/bash echo &date >> /xxx/test.txt
-
普通用户创建定时任务:
crontab -e
-
然后修改配置文件,加入内容:
* * * * * /bin/bash /xxx/test.sh
-
5个星号分别对应:
分 时 日 月 周
-
每5分钟:
*/5 * * * *
-
每8小时:
0 */8 * * *
-
每天上午7点10分:
10 7 * * *
-
-
查看定时任务是否创建成功:
crontab -l
FTP / SFTP
- 进入FTP交互:
ftp [user]@[host]
sftp [user]@[host]
- 连接服务器:
open [user]@[host]
- 服务器路径操作:
cd
,pwd
,ls
- 本地路径操作:在命令前加
l
(就是local的意思)
- 本地路径操作:在命令前加
- 上传文件:
put
,下载文件:get
网络操作
-
端口转发(把远程端口发出的数据转发到本地端口)
ssh -N -L [远程端口]:localhost:[本地端口] [remote user]@[remote host]