Linux每日一命令学习系列总结

Linux每日一命令学习系列

这里是罗列出最常用的命令组合,而不是一个个详细介绍每个参数的用法,适合当你面对linux的终端的时候,知道有哪些命令,可是不知道加啥组合参数有啥效果的时候使用。
具体的可以去,这里www.cnblogs.com/peida/tag/每日一linux命令/,有详细介绍,此处是一个快捷的使用总结,方便作为简单的入门手册查询
这篇文章是上篇图片版本的markdown版本,居然没有人看那个,果然是因为复制粘贴不了吗?看看这篇文章浏览量对比那个怎么样

正式开始

说明,文中的,三个减号(—)代表linux的管道符合(|),因为markdown的表格冲突,暂时这样写

命令使用场景组合参数用法
ls列出某一个目录下的子目录以及文件ls -lRF /
因为total的原因不够直观,那么可以代替上面这个find $PWD ---xargs ls -ldF
如果还是不够直观,这次加颜色参数find $PWD --- xargs ls -ldF --color
当前文件目录最新修改的文件排序最前ls -ltr
直观的看出目录于名称后加”/”, 可执行档于名称后加”*”ls -F
cd进入当前登录用户的目录cd
进入刚才的目录cd -
后退上一级目录cd ..
pwd当前工作目录的完整路径(软连接,-P物理地址)pwd
mkdir创建目录 (递归创建目录-p)mkdir -p hank/a/b/c
rm强制删除当前目录以及里面的文件rm -rf *
rmdir删除空目录(删除前目录必须为空)递归删除包括自身rmdir -p(不实用)
mv文件改名mv test.log test.txt
文件移动mv test.log(文件) test(文件夹)
目录移动mv testa(文件夹) testb(文件夹)
移动当前文件夹下的所有文件到上一级目录mv * ../
cp复制单个文件到目标目录cp test.log(文件) test(文件夹)
复制整个目录 (testb不存在那么就没有testa)cp -a testa(文件夹) testb(文件夹)
touch创建文件touch a b c
修改文件时间戳touch a
cat查看文件cat a b c
生成文件cat >test.log<<EOF
合并文件cat a b c > d
nl显示行号不管是否为空行nl -b a test.log
让行号左边开头补全零nl -b a -n rz test.log
more向后翻页空格
向前翻页b键
从第n页开始more +n 文件
每页设定n条记录more -n 文件
查找一个指定字符串more +/字符串 文件
less升级版的more,低级版的vi,不需要像more一样全部加载文件
查看文件less 文件(其他按键操作看vi)
head显示文件的前5行head -n 5 log.test
显示文件的除了最后5行的全部内容head -n -5 log.test
tail显示行末的最后5行tail -n 5 log.test
刷新查看最新的文件内容tail -f log.test(超实用)
显示文件第5行开始的内容tail -n +5 log.test
which查询Path变量路径下的,某个系统可执行(不是任意的文件)的文件的位置
which ls
which which
which cd
whereis搜索程序名包括,二进制文件,man说明文件,源代码文件三类(不要搞错)
whereis svn
whereis tomcat
whereis resin
locate快速查询档案系统是否有指定的档案(这里我也不太懂什么叫档案)
查询pwd相关的文件locate pwd
查询etc目录下所有m开头的文件locate /etc/m
find查询24小时内修改过的文件find -atime -1
根据关键字查询文件(文件夹)find -name "*han*"
只查询文件不包括文件夹find -type f -name "*han*"
查询当前目录下的所有子目录find . type d
查询当前目录下大于1k的文件find . -type f -size +1000c
列出更加详细的文件信息组合命令find . -type f -exec ls -l {} \;
把查找到的文件移动到指定目录find . -type f -name "*han*" -exec mv {} hello
把查找到的文件复制到指定目录find . -type f -name "*han*" -exec cp {} hello
查找当前目录文件并显示属于哪类文件find . -type f --- xargs file
查找当面目录文件中包括关键字find . -type f --- xargs grep "hank"
在a目录查询避开b目录查询find a -path "b" -prune -o -print
优先在当前目录查找然后去子目录find / -name "file" -depth -print
chmod给文件一组默认执行权限chmod 751 test.log
给文件一组默认读权限chmod 444 test.log
给文件一组读写执行权限chmod 777 test.log
tar搞清楚打包和压缩两个概念,tar是打包用的,但是可以参数进行压缩
解开一个tar包还原里面的文件tar xvf file.tar
把文件和目录达成一个tar包tar cvf file.tar 对应目录
解开tar包的压缩包版本 (gzip)tar zxvf file.tar.gz
压缩打包后的tar包 (bzip)tar zcvf file.tar.gz 对应目录
产一个gz的压缩包tar -ztvf file.tar.gz
chgrp群组去/etc/group里面看
根据某个文件改变其他所属的类别chgrp --reference=a b
chown更改指定目录及其子目录所有的拥有者和群组chown -R hank:han test.log
gzip压缩当前目录下的所有文件(文件夹忽略)gzip *
解压当前目录下的压缩文件gzip -d *
压缩一个tar包gzip -r test.tar
递归压缩目录gzip -r test/
df显示磁盘使用情况df
查看文件系统类型df -T
更方面人理解的列表(H表示1000而不是1024)df -h
du查看当前目录下各个目录占用空间du
查看当前目录下文件+目录各自占用空间du -a
用人能看懂的方式展示du -h
只看一级的子目录各自占用的空间大小du -h --max-depth=1
ln软硬链接的区别,软的是一种快捷方式,硬的直接指向文件所在位置
ln -s test.log test.soft.link
ln test.log test.hard.link
diff比较2个文件(文件夹),推荐方式diff a b -y
生成补丁diff a b > a.patch
打补丁patch a a.patch
date日期date "+%D"
时间date "+%T"
cal本月的日历cal
全年的阳历cal -y 2017
grep查找指定进错ps -ef --- grep svn
从a文件中读取规则去b文件中找cat b --- grep -f a
从文件中找关键字grep 'han' test.log
查找ssh同时排除grepps aux--- grep ssh --- grep -v 'grep'
查找包含a或者b或者c的内容行grep -E 'a---b---c' test.log
wc统计行数,单词数,字节数,文件名wc test.log
只统计行数wc -l test.log
ps显示所有进程信息(常见)ps -ef
查找特定进程(常用)ps -ef ---grep svn
列出当前用户登录的pid相关ps -l
显示所有内存当中的程序(实用)ps aux
kill彻底杀死进程(超常用)kill -9 进程号
killall杀死进程通过名字(可能误杀)killall -9 进程名称
top显示完整命令(默认cpu排序,实用)top -c
free查看内存free -m
vmstat查看内存使用的详细信息vmstat -s
iostat查看所有设备负载情况iostat
watch每隔一秒高亮显示网络中链接数的变化watch -n 1 -d netstat -ant
at一次性的定时任务at 时刻
打开定时任务/etc/init.d/atd start
查看定时任务atq
删除定时任务atrm 任务号
crontab打开crond服务service crond start
每日执行一命令crontab -e
最后一行添加如hello* * * * * /bin/echo 'hello' > /root/han/cron
lsof通过进程号显示该进程打开的文件lsof -p 进程号
列出哪些进程在使用这个文件lsof /bin/bash
列出tcp网络连接信息lsof -i tcp
查询谁在使用某个端口lsof -i :8080
主要解决了,这个进程打开了哪些文件,这个文件是由那个进程打开的
ifconfig显示网络设备信息ifconfig
route查看路由信息route -n
ping向指定的ip发送指定次数ping -c 10 127.0.0.1
traceroute向指定的域名发送请求探测出路径traceroute www.sogo.com
netstat显示监听的套接口netstat -l
显示所有udp的连接netstat -u
显示所有tcp的连接netstat -t
统计机器中网络连接各个状态个数netstat -a -- awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
找出程序运行的端口netstat -ap --- grep ssh
显示pid和进程名字netstat -p
显示ip地址而不是域名netstat -n
通过端口找到进程netstat -ap--- grep '80'
ss显示tcp链接ss -t -a
列出所有打开的网络连接端口ss -l
scp本地文件(文件夹)到远程scp -r local remoteIP:remote
远程到本地scp -r remoteIP:remote local
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值