Linux常用命令
注意:常用命令中,会有一些命令仅限于特定的操作系统使用,如Ubuntu或CentOS等特定的Linux发行版本。
系统相关
显示当前内核版本
命令:
1 | uname -a |
输出:
1 | fify@fify-PC:~$ uname -a |
显示当前Ubuntu的系统版本
命令:
1 | lsb_release -a |
输出:
1 | fify@fify-PC:~$ lsb_release -a |
用户和组
显示当前登录的用户名
命令:
1 | whoami |
输出:
1 | fify@fify-PC:~$ whoami |
这个命令在组合其他命令一起使用的时候会比较好用,比如:
1 | sudo usermod -aG docker $(whoami) |
查看用户所属的组
可以查看当前用户的组或者指定用户所属的组。
查看当前用户所属的组
命令:
1 | groups |
输出:
1 | fify@fify-PC:~$ groups |
查看其他用户所属的组
命令:
1 | groups fify |
输出:
1 | fify@fify-PC:~$ groups fify |
以其他用户的身份执行命令
以下命令以jenkins用户的身份执行jstack 36730
命令。
1 | sudo -u jenkins -H jstack 36730 |
添加用户到组
将当前用户添加到docker
用户组
1 | sudo usermod -aG docker $USER |
实用工具
文字处理
替换某行中间的文字
1 | sed -e 's/\(.*\)wrapper.daemonize=FALSE\(.*\)/\1wrapper.daemonize=TRUE\2/g' -i mycat |
替换mycat文件中包含wrapper.daemonize=FALSE
的行,并把wrapper.daemonize=FALSE
替换为wrapper.daemonize=TRUE
。
查看文件的第m-n行
1 | sed -n '5,10p' filename |
这样你就可以只查看文件的第5行到第10行。
删除文件的某一行
删除文件的第三行:
1 | sed -i '3d' 1.txt |
删除文件的第三至第五行:
1 | sed -i '3,5d' 1.txt |
删除符合特定正则表达式的行:
1 | sed -i '/^Love/d' 1.txt |
在sed
正则表达式匹配中使用Lazy策略:
sed
命令的正则表达式并不支持懒匹配,但是我们可以通过绕过的方法来做。比如我要查找以下内容中”和”之间的单词:
1 | "departmentId" bigint(20) NOT NULL, |
那么我们可以通过`”[^"]*”查找””之间的内容。如下:
1 | sed -e 's/"\([^"]*\)"[^,]*,/\1,/g' |
可以获取到:
1 | "departmentId", |
将文字分隔显示:
1 | grep abc.pl * | awk -F 'abc.pl' '{print $2}' |
文件工具
获取目录中最新的文件
1 | ls *.war -Art | tail -n 1 |
查看文件类型
1 | file xxxx.jpg |
file
命令不跟据文件后缀名判断文件类型,而是根据文件最头部的几位Magic Number进行判断。对于乱改文件后缀的情况非常适合。
如:
1 | fify@fify-Vostro-3902:~/Desktop$ file 1945300044.png |
转载请注明出处:Linux常用命令
原文地址:https://www.xiaotanzhu.com/linux/2016-08-14-linux-commands.html