0%

Linux命令速查笔记

cd 进入指定目录

1
2
3
4
5
cd dir          // 进入当前目录的子目录
cd .. // 进入当前目录的上一级目录
cd / // 进入系统根目录
cd ~ // 进入当前用户主目录
cd /usr/local // 进入特定目录

ls 列出当前目录文件

1
2
3
4
5
6
ls -a   // 列出当前目录所有文件,包含隐藏文件
ls -l // 列出长数据串,包含文件的权限和属性 相当于 ll
ls -i // 显示文件节点索引号
ls -t // 按照修改时间,降序显示
ls -rt // 按照修改时间,升序显示
ls -alht // 按照修改时间,降序显示 h显示文件大小
个人感觉 ll -h 比较好用

mv 修改文件名字或移动位置

1
2
mv file newname         // 更改文件名字
mv /dir/file /otherdir // 移动文件位置

rm 删除

1
2
3
rm -rf dir  // 递归删除指定目录中的所有文件
rm file // 删除指定文件
rm -rf * // 递归删除当前目录中的所有文件

cp 复制

1
2
cp -r /dir /other-dir    // 将dir目录下所有文件,移动到other-dir目录中
cp fileA fileB // 备份A文件,并改名

kill 杀进程

1
2
kill -9  PID   // 将PID进程结束
kill -17 PID // 将PID进程暂停

chown 修改文件所属用户或用户组

1
2
chown -R root:root /tmp    // 修改 tmp 目录所属用户为 root,用户组为 root
chown iisheng file // 将file的所有者设置为iisheng

chmod 给文件设置别人访问权限

1
2
chmod 766 file // 给某个文件别人访问权限
chmod 777 * // 当前文件夹所有文件所有用户都可以读写

cat 查看文件或写到指定文件内容

1
2
3
4
5
cat file                                  // 显示整个文件内容
cat -n file // 显示整个文件内容,并由1开始对行数编号
cat file > newFile // 将文件的内容写到新文件里面
cat file | head -n 3000 | tail -n +1000 // 查看文件的1000-3000行
cat /proc/PID/status // 查看指定进程的相关信息

scp 终端远程下载上传文件

1
2
3
4
scp  root@iisheng.cn:/path/filename ./                              // 文件下载到本地当前目录
scp -P 2222 /home/jdk.tar.gz root@iisheng.cn:/root/jdk.tar.gz // 上传文件
scp -P 2222 -r /home/jdk/ root@isheng.me // 上传文件目录
scp -P 2222 -r /home/jdk/ root@isheng.me // 使用IPV6寻址上传文件目录

netstat 打印网络信息状态

1
2
3
4
5
6
netstat -at                // 列出所有TCP端口
netstat -au // 列出所有UDP端口
netstat -lt // 列出所有监听TCP的端口
netstat -lu // 列出所有监听UDP的端口
netstat -r // 显示核心路由信息
netstat -anl | grep 8888 // 查看相关端口号信息

top 实时系统的查看系统运行情况

1
2
3
top              // 动态查看系统的整体运行情况
top -p PID // 查看指定进程的运行情况
top -u user // 查看指定用户的相关进程的运行情况
htop 和top类似功能

sed 处理文件并在控制台打印

1
2
sed 's/book/books/' file   // s 替换指定 字符,将book替换为books
sed -i 's/book/books/g' file // g 替换文本中内容 -i 直接编辑文本选项 匹配文件中第一个book替换为books
这个东西很多功能的,暂时不详细学习

less 从头查看日志

1
2
3
4
shift+g 跳转到文件底部
按f键,是向前(下)查看 forword
按b键,是向后(上)查看 backword
q 退出

more 从头查看日志

1
2
3
more file
按ctrl+f键,是向前(下)查看 forword
按ctrl+b键,是向后(上)查看 backword

tail 动态查看文件尾部内容

1
tail -500f file  // 动态查看文件尾部500行

head 显示文件开头内容

1
head -100f file  // 查看文件前100行

rar 解压rar文件或压缩为rar文件

1
rar x -ep2 filename    // 将Windows rar文件 解压 utf-8编码的文件

unzip 解压zip文件或压缩为zip文件

1
2
3
unzip -d fileDir file.zip   // zip 文件 解压
unzip fileName // 文件解压缩到当前目录
unzip -O cp936 file.zip //将Windows文件以utf-8编码解压缩

service 启动查看进程状态

1
2
service sshd status        // 查看sshd的运行状态
service sshd start // 启动服务

systemctl 启动查看进程状态

1
2
systemctl status httpd.service // 查看httpd服务状态
systemctl enable httpd.service // 启动服务

安装、卸载软件

1
2
sudo agt-get install git  // 安装git
sudo apt-get --purge remove git // 卸载git

dpkg

1
2
sudo dpkg -i *.deb    // 安装.deb文件的软件
sudo dpkg -P *.deb // 卸载.deb文件的软件

shutdown

1
2
shutdown -h now    // 关机
shutdown -r now // 重启

df

1
df -lh   // 查看系统硬盘使用情况

du

1
2
3
du -sh     // 查看文件目录大小
du -ah // 查看文件目录下面各个文件大小
du -h --max-depth=1 ./ // 查看当前目录大小

find 查找

1
2
find . -name "*.c" | xargs grep -H "intern("  // 查找当前目录指定文件后缀包含指定字符的结果
find /home -name '*.md' // 查找指定目录包含指定字符串 的文件名路径

grep 全面搜索正则表达式并把行打印出来

1
2
grep -rn "hello,world!" *  // 在当前目录查找 hello,world 字符串
grep 'model name' /proc/cpuinfo | wc -l // 查看系统有几个CPU
一般配合别的命令一起使用效果很强大

ps 显示当前进程状态

1
2
ps aux | grep nginx     // 根据名字查找进程
ps -ef | grep elastic // 根据名字查找进程

lsof 查看进程打开的端口,查看打开文件的进程

1
lsof -i:8888      // 根据端口号查看相关进程信息

iconv 转换文件编码

1
2
iconv -f gb2312 file -o newFile  // 将Windows文件转换为Linux识别的文件
iconv -f gbk -t utf8 file > bewFile // 将Windows文件转换为Linux识别的文件

curl 文本传输工具

1
2
3
4
curl -H 'Content-Type:application/json' https://api.github.com -s | python -m json.tool  // GET请求
curl -X PUT 127.0.0.1:9200/job_index/_mapping/job -d '{"properties":{"new_field":{"type":"integer"}}}' // PUT请求
curl -X DELETE 127.0.0.1:9200/agent_job_index // DELETE请求
curl -X POST 127.0.0.1:9200/job_index/job/_search -d '{"query":{"term":{"id":"1"}}}' // POST请求
iisheng wechat
微信扫码关注 Coder阿胜