篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux常用命令150条吐血总结的个人Linux手册相关的知识,希望对你有一定的参考价值。
1、日常命令
编号 | 操作 | 说明 |
---|
(1) | cd … | 返回上一级目录 |
(2) | cd - | 返回上一次目录 |
(3) | cd或cd ~ | 返回家目录 |
(4) | cd / | 进入根目录 |
_ | | |
(5) | pwd | 显示当前目录 |
(6) | ls | 显示当前目录文件 |
(7) | ls localrepo/ | 显示指定目录的文件 |
(8) | 11 | 查看目录文件的的详细信息 |
(9) | 1a | 查看全部包括隐藏的目录文件 |
(10) | tree | 查看当前目录文件树 |
(11) | tree mydir | 查看指定目录的文件树 |
(12) | touch hello.py | 创建空文件 |
_ | | |
(13) | mkdir mydir | 创建文件夹 |
(14) | mkdir -p a/b/c | 创建层级目录 |
(15) | mkdir a/{b,c}/{d,e} | 同一级创建多个文件夹 |
_ | | |
(16) | cp hello.py ~/hel1o2.py | 拷贝文件 |
(17) | cp hello.py -i hello2.py | 拷贝文件,如果有同名文件询问是否覆盖 |
(18) | cp hello.py -f hello2.py | 拷贝文件,如果有同名文件强制覆盖 |
(19) | cp hello.py -n hello2.py | 拷贝文件,如果有同名文件不覆盖 |
_ | | |
(20) | mv hello2. py hellocp.py | 重命名文件 |
(21) | mv hello.py ~/Desktop | 移动文件 |
(22) | rm hellocp.py | 删除文件 |
(23) | rm -rf localrepo/ | 递归删除目录 |
_ | | |
(24) | find ~/Desktop/ -name ‘*.py” | 在指定目录中查找文件 |
_ | | |
(25) | ln -s /usr/bin/python ./mypy1ink | 创建可执行程序的软链接 |
(26) | alias rrm=‘rm -rf’ | 给命令起别名,需要root权限 |
(27) | history | 查看命令历史 |
(28) | clear | 清屏 |
2、速查命令
编号 | 操作 | 说明 |
---|
(29) | man rm | 查看rm命令的手册解释 |
(30) | rm --help | 查看rm命令帮助 |
(31) | info rm | 查看rm命令详细信息 |
(32) | whereis python | 查找可执行程序 |
(33) | which python | 查看当前使用的是哪个目录中的python |
3、更多查找
编号 | 操作 | 说明 |
---|
(34) | find ~ -name ‘*.py’ -exec rm {} ; | 查找家目录 下所有的py文件并删除,{}与exec结合匹配所有文件 |
(35) | find ~ -name ‘*.py’ -exec chown wife {} ; | 查找家目录下所有py文件并将所有权转让给wife用户 |
(36) | find ~ -name ‘*.py’ -exec cat {} ;> record.txt | 查找文件并将全部内容拼接并写入文件中 |
(37) | find ~ -name ‘*.py’ -exec cp {} mydir ; | 查找文件并拷贝到指定目录 |
_ | | |
(38) | grep ‘def.*’ a.py | 在a. py中查找指定内容 |
(39) | grep "def.*’ a.py b.py c.py | 在多个文件中寻找指定内容 |
(40) | grep -V ‘def.*’ a.py | 在a. py中查找指定内容以外的内容 |
(41) | grep -i "HELLO’"a.py | 在a. py中查找指定内容并忽略大小写 |
(42) | grep -E '“1-9]+” a.py | 在a. py中查找正则表达式匹配的内容(匹配到多个数字) |
(43) | grep -F “[1-9]+” a.py | 在a.py中查找纯文本内容 (严格匹配字符串”[1-9]+" ) |
(44) | grep -e “def." -e "class.” a.py | 在a.py中查找多个内容 |
(45) | grep “text” ./ -r -n | 在当前目录下递归查找内容 |
4、系统管理
编号 | 操作 | 说明 |
---|
(46) | poweroff | 关机 |
(47) | reboot | 重启 |
(48) | shutdown -h 12:00 | 定时关机 |
(49) | shutdown -h now | 立刻关机 |
(50) | shutdown -C | 取消定时关机 |
_ | | |
(51) | top | 显示所有系统任务 |
(52) | free -m | 查看内存占用,以M为单位 |
(53) | uname -a | 打印操作系统信息 |
(54) | uptime -p | 查看系统运行时间 |
(55) | echo $PATH | 查看环境变量 |
(56) | export PATH=$PATH: /home/sirouyang/Desktop/ | 追加环境变量 |
(57) | lsof | head -n 10 | 查看进程打开的文件(- 切皆文件,数据文件、网络连接、硬件设备) |
_ | | |
(58) | time lsof | 统计命令执行时间 |
(59) | cal/data | 查看日历和时间 |
(60) | data +%y-%m-%d-%H-%M-%S | 格式化地查看时间 |
_ | | |
(61) | # 0-6 | 0停机-1单用户安全模式-2多用户安全模式-3多用户网络模式-4系统保留级别- 5图形界面-6重启 |
(62) | runlevel | 显示当前运行级别 |
(63) | init6 | 切换运行级别到6级 |
5、软件安装
编号 | 操作 | 说明 |
---|
(64) | sudo apt update | 更新软件源 |
(65) | sudo apt install python-pip | 安装pip |
(66) | configure | 源码包中执行配置 |
(67) | make clean | 清除一 些编译的垃圾 |
(68) | make | 执行编译 |
(69) | make install | 安装 |
(70) | make uninstall | 卸载 |
6、文本操作
编号 | 操作 | 说明 |
---|
(71) | cat hello.py | 查看文件 |
(72) | gedit hello.py | 使用gedit查看文件 |
(73) | head -n 10 hello.py | 查看前10行 |
(74) | tail -n 10 hello.py | 查看后10行 |
(75) | less hello.py | 一次查看少量内容,PageUp和PageDown键翻页 |
(76) | vim hello.py | 使用vim打开文件 |
7、压缩与解压
编号 | 操作 | 说明 |
---|
(77) | tar -cvf /home/abc. tar /home/abc/* | 只打包, 不压缩(c=创建压缩包,v=打印信息,f=指定文件名) |
(78) | tar -zcvf /home/abc .tar.gz /home/abc/* | 打包, 并用gzip压缩 |
(79) | tar -jcvf /home/abc. tar.bz2 /home/abc/* | 打包,并用bzip2压缩 |
(80) | tar -xvf abc.tar | 解压普通tar包(x=解压缩) |
(81) | tar -zxvf abc. tar.gz | 解压gz压缩包 |
(82) | tar -jxvf abc. tar. bz2 | 解压bz2压缩包 |
(83) | zip xx.zip ./* | 压缩 |
(84) | unzip xxx.zip | 解压zip压缩包 |
(85) | gzip -rv abc | 将abc文件夹下的内容递归压缩打gzip压缩包 |
(86) | gzip -d abc/* | 将abc下的所有内容解压缩 |
8、磁盘管理
编号 | 操作 | 说明 |
---|
(87) | df -h | 查看磁盘使使用情况 |
(88) | sudo du ~h | 查看用户目录的磁盘使使用情况 |
(89) | du -sh | 当前目录的总体使用情况 |
(90) | du abc.tar.gz abc.tar | 查看文件和目录的磁盘占用 |
(91) | dd if=/dev/zero of=temp.txt bs=1K count=1024 | 备份数据 |
9、登陆日志
编号 | 操作 | 说明 |
---|
(92) | last | 查看用户近期登陆情况 |
(93) | last -2 | 最近登陆的两个用户 |
(94) | last -2 root | 查看root用户最近两次登陆情况 |
(95) | id | 显示用户及其群组信息 |
(96) | groups | 查看当前用户所加入的组 |
(97) | whoami | 显示当前用户名称 |
10、用户权限
编号 | 操作 | 说明 |
---|
(98) | groups | 查看用户所处的工作组 |
(99) | whoami | 查看当前用户的名称 |
_ | | |
(100) | sudo usradd -m wife | 新建wife用户,-m-自动创建家目录 |
(101) | sudo useradd -d /home/myson -m son | 创建son用户,指定其家目为home/myson |
(102) | sudo useradd -g guests -G root,adm -m him | 创建him用户,属于group组, 其也属于adm, root组 |
(103) | sudo useradd -G guests,sudo -m -s /bin/bash mywife | 新增一个用户,自动创建家目录,-s指定bash |
(104) | userdel rose | 删除rose账号 |
(105) | userdel -r rose | 删除用户及相关目录下的文件(/etc/passwd,/etc/shadow,/etc/group等) |
(106) | usermod -s /bin/ksh -d /home/z -g developer him | 修改him用户的shell.家目录、所属组等信息 |
(107) | sudo passwd | 修改自己的密码 |
(108) | sudo passwd mywife | 修改mywife的密码 |
(109) | su - mywife | 切换用户 |
(110) | sudo su | 切换到root用户 |
_ | | |
(111) | sudo groupadd guests | 添加guests组 |
(112) | sudo groupadd -g 101 group1 | 添加组group1, 识别号为101 |
(113) | groupdel group1 | 删除组 |
(114) | groupmod -g 10000 -n group3 group2 | 将组group2的标识号改为10000,组名修改为group3 |
(115) | gpasswd -a u1 g1 | 将u1加入到g1组 |
(116) | gpasswd-du1g1 | 将u1退出g1组 |
(117) | gpasswd -A u1 g1 | 将g1组的管理员指派给u1 |
_ | | |
(118) | chmod 421 hello.py | 设置自己、用户组、其他人的权限分别为只读、只写、只执行 |
(119) | chmod atr ,u+wx,g+X,0-wx hello.py | 详细修改全部用户、拥有者、用户组、其他人的权限 |
11、网络管理
编号 | 操作 | 说明 |
---|
(120) | ifconfig | 查看网卡状态 |
(121) | ping 192. 168.59.129 | 检查网络是否连通 |
(122) | wget “http:/download.redis.IO/releases/redis-4.0.9.tar.gz” | 下载redis |
(123) | netstat -at | 列出所有TCP端口 |
(124) | netstat -r | 显示路由表 |
(125) | netstat -i | 显示接口列表 |
(126) | netstat -tpnl | 查看已连接的TCP端口和程序名 |
(127) | netstat -anp | grep 3306 -C |
12、进程管理
编号 | 操作 | 说明 |
---|
(128) | ps-ef | 查看所有进程 |
(129) | ps -ef | grep redis |
(130) | kill -9 77157 | 强行关闭指定pid的进程 |
(131) | kill -15 77157 | 终止指定进程 |
13、远程登陆
编号 | 操作 | 说明 |
---|
(132) | sudo apt-get install openssh-server | 安装openssh-server |
(133) | sudo ps -ef grep ssh | 查看SSH服务是否启动 |
(134) | sudo service ssh start | 如果没有启动则启动SSH服务 |
(135) | ssh root@127.0.0.1 | 访问远程主机 |
(136) | exit | 退出远程访问 |
_ | | |
(137) | scp -r sirouyang@192.168. 158.129:/abc /home/wife/Desktop/ | 从远程主机拷贝内容到本地 |
(138) | scp -r /abc sirouyang@192.168 .158.129:/home/sirouyang/Desktop/ | 从本地拷贝内容弄到远程主机 |
_ | | |
(139) | ssh-keygen -t rsa | 生成ssh秘钥对 |
(140) | scp ~/ .ssh/id_ rsa. pub sirouyang@192.168 .158.129:/home/sirouyang/ .ssh/ | 上传公钥给远程主机 |
(141) | ssh sirouyang@192. 168.158.129 | ssh登录远程主机 |
(142) | cat Desktop/id_ rsa.pub >> ~/ .ssh/authorized_ keys | 操作远程主机添加公钥认证(今后远程对本地ssh免密) |
(143) | ssh-copy-id sirouyang@192.168 .158.128 | 让远程持有自己的公钥(对方不必添加公钥到authorized_ keys) |
注意:ssh公钥交换过程:远程主机持有本地的公钥时,ssh以及scp可以免密执行。
14、其他命令(更新中)
编号 | 操作 | 说明 |
---|
(144) | ls -i /usr/bin/python | 查看文件的inode |
(145) | 1n /usr/bin/python ./phln | 创建硬链接(共享文件入口) (硬链接不能跨磁盘) |
(146) | source ~/ . bashrc | 使修改后的bashrc生效 |