Linux 命令大全
发布时间 : 2021-11-22 22:15
阅读 :
Linux 命令大全
开启SSH服务
1 2 3 4 5 6 7 8 9 10 11 12 13 14 1、安装SSH服务 sudo apt-get install openssh-server 2、配置端口 sudo vi /etc/ssh/sshd_config port 22 修改端口 PermitRootLogin yes 允许远程登陆 3、启动、重启SSH服务端 sudo /etc/init.d/ssh start service ssh start sudo /etc/init.d/ssh restart 或者 service ssh restart 4、远程连接: ssh root@serverIP -p [port] 5、设置开机自启动 sudo systemctl enable ssh #开启 sudo systemctl disable ssh #关闭
系统管理命令
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 stat 显示指定文件的详细信息,比ls更详细 who 显示在线登陆用户 whoami 显示当前操作用户 hostname 显示主机名 uname 显示系统信息 top 动态显示当前耗费资源最多进程信息 ps 显示瞬间进程状态 ps -aux du 查看目录大小 du -h /home带有单位显示目录信息 df 查看磁盘大小 df -h 带有单位显示磁盘信息 ifconfig 查看网络情况 ping 测试网络连通 netstat 显示网络状态信息 man 命令不会用了,找男人 如:man ls clear 清屏 alias 对命令重命名 如:alias showmeit="ps -aux" ,另外解除使用unaliax showmeit kill 杀死进程,可以先用ps 或 top命令查看进程的id,然后再用kill命令杀死进程。 killall [soft] - 安装软件: sudo apt-get install SoftName - 卸载软件: sudo apt remove SoftName - 查看系统信息: uname -a - 安装查询软件:sudo apt install neofetch screenfetch - -终端查询命令:neofetch 或 screenfetch 常用命令还有: uname -a #查询内核版本 cat /proc/cpuinfo #查询CPU信息 hostname #查看计算机名 lspci #列出所有PCI设备 lsusb #列出所有USB设备 lsmod #列出加载的内核模块 env #查看环境变量资源 free -m #查看内存使用量和交换区使用量 df -h #查看各分区使用情况 ifconfig #查看网络接口属性,需 sudo apt install net-tools 或 ip address 14 route -n #查看路由表,或 ip route
文件及目录基本命令
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 ls 显示文件或目录 -l 列出文件详细信息l(list) -a 列出当前目录下所有文件及目录,包括隐藏的a(all) mkdir 创建目录 -p 创建目录,若无父目录,则创建p(parent) cd 切换目录 touch 创建空文件 echo 创建带有内容的文件。 cat 查看文件内容 cp 拷贝 mv 移动或重命名 rm 删除文件 -r 递归删除,可删除子目录及文件 -f 强制删除 find 在文件系统中搜索某文件 wc 统计文本中行数、字数、字符数 grep 在文本文件中查找某个字符串 rmdir 删除空目录 tree 树形结构显示目录,需要安装tree包 pwd 显示当前目录 ln 创建链接文件 more、less 分页显示文本文件内容 head、tail 显示文件头、尾内容
文件权限管理
1 2 3 chmod [] #更改文件权限,r是读,w是写,x是执行权限 chown #更改文件、目录拥有者 chgrp #更改用户组
打包压缩相关命令
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 gzip: -d 解压*gz包 bzip2: tar: 打包压缩 -c 归档文件 -x 压缩文件 -z gzip压缩文件 -j bzip2压缩文件 -v 显示压缩或解压缩过程 v(view) -f 使用档名 例: tar -cvf /home/abc.tar /home/abc 只打包,不压缩 tar -zcvf /home/abc.tar.gz /home/abc 打包,并用gzip压缩 tar -jcvf /home/abc.tar.bz2 /home/abc 打包,并用bzip2压缩 当然,如果想解压缩,就直接替换上面的命令 tar -cvf / tar -zcvf / tar -jcvf 中的“c” 换成“x” 就可以了。
关机/重启机器
shutdown -f [time] #now
-r 关机重启
-h 关机不重启
now 立刻关机
halt 关机
reboot 重启
- 关机shutdown:
shutdown -f [time] #now
poweroff #关闭系统
vim使用
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 vim三种模式:命令模式、插入模式、编辑模式。使用ESC或i或:来切换模式。 命令模式下: :q 退出 :q! 强制退出 :wq 保存并退出 :set number 显示行号 :set nonumber 隐藏行号 /apache 在文档中查找apache 按n跳到下一个,shift+n上一个 插入模式下: 100 dd 删除100行 10 yy p 复制10行 p 粘贴 h 左移一个字符 k 上移一个字符 j 下移一个字符 w 向前移动一个单词(光标停在单词首部),如果已到行尾,则转至下一行行首。此命令快,可以代替l命令。 b 向后移动一个单词 2b 向后移动2个单词 e,同w,只不过是光标停在单词尾部 ge,同b,光标停在单词尾部。 gg 移动到文件头。 = [[ G(shift + g) 移动到文件尾。 = ]] Ctrl + e 向下滚动一行 Ctrl + y 向上滚动一行 Ctrl + d 向下滚动半屏 Ctrl + u 向上滚动半屏 Ctrl + f 向下滚动一屏 Ctrl + b 向上滚动一屏
用户及用户组管理
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 /etc/passwd 存储用户账号 /etc/group 存储组账号 /etc/shadow 存储用户账号的密码 /etc/gshadow 存储用户组账号的密码 useradd [op] 用户名 #新增用户 userdel 用户名 #删除用户 adduser 用户名 #新增用户 groupadd 组名 groupdel 组名 passwd user #给user用户设置密码 su root su - root /etc/profile 系统环境变量 bash_profile 用户环境变量 .bashrc 用户环境变量 su user 切换用户,加载配置文件.bashrc su - user 切换用户,加载配置文件/etc/profile ,加载bash_profile 更改文件的用户及用户组 sudo chown [-R] owner[:group] {File|Directory} 例如:还以jdk-7u21-linux-i586.tar.gz为例。属于用户hadoop,组hadoop 要想切换此文件所属的用户及组。可以使用命令。 sudo chown root:root jdk-7u21-linux-i586.tar.gz
硬盘操作
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 lsblk 查看本地磁盘信息 NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sdb 8:16 1 59.5G 0 disk └─sdb1 8:17 1 6.9G 0 part /media/xxx/xxxx sda 8:0 0 40G 0 disk └─sda1 8:1 0 40G 0 part / fdisk 查看本地磁盘 -a 查看所有磁盘 cfdisk /dev/sdb #对sdb进行操作 dd dd if=/dev/sdb of=/root/image.img #将image.img 写入sdb if=文件名:指定输入文件名或者设备名,如果省略“if=文件名”,则表示从标准输入读取。 of=文件名:指定输出文件名或者设备名,如果省略“of=文件名”,则表示写到标准输出。
*.deb二进制包安装/卸载: 安装:dpkg -i *.deb
卸载:sudo dpkg -r xxSoftName
find查找文件find path -name 'file'
Eg:find / -name like.txt
在’/‘目录下查找’like.txt’文件,可用’*’、’?’通配符
开启SSH远程登陆
为安全故,Linux默认是关闭远程登陆的
sudo vim /etc/ssh/sshd_config
将38行:PermitRootLogin no 改为:PermitRootLogin yes
将115行:UseDNS no 改为:UseDNS yes 省略DNS验证。
重启SSH:
service sshd restart
或者:
/etc/initd.d/sshd restart
2.2文件及目录操作命令:
打印目录列表: ls -all
文件/目录复制:cp old new
文件/目录移动:mv old new
删除文件/目录(非空目录加-r递归,加-f不提示):rm -op path
改变目录 cd:cd path
打印当前路径pwd: `pwd’
新建文件夹mkdir:mkdir name
mkdir -r path
#-r为递归创建
运行当前目录下文件:./filename
编辑文件vimvim file
编辑按i键 退出按ESC 再按: :q 为退出不写入 :wq 为写入并退出 :!q 为强制退出
查看文件内容: cat file
2.3 权限操作命令:
2.4 网络操作命令
ssh 终端远程连接:ssh -p [port] user@[ip or URL]
Eg:ssh -p 222 root@abc.cn
查看本机ip地址ifconfig -a
下载网络文件wget:wget url
修改IP地址(Ubuntu) 方法一:修改网络配置文件: # vim /etc/network/interfaces
重启网络服务: # /etc/init.d/networking restart
SSH命令传输文件SCP
一般用scp命令传输文件。
1、从服务器上下载文件
scp username@servername:/path/filename /localhost/file
Eg:
scp root@192.168.1.3 :/home/mysql.tar.gz /home/root/
2、上传本地文件到服务器
scp /path/filename username@servername:/path/filename
3、从服务器下载整个目录 scp -r username@servername:/(远程目录) /(本地目录)
例如:scp -r root@192.168.0.101 :/var/www/test /var/www/
4、上传目录到服务器 scp -r local_dir username@servername:remote_dir 例如:scp -r test root@192.168.0.101 :/var/www/ 把当前目录下的test目录上传到服务器的/var/www/ 目录
5、非默认端口传输:
‘scp -P 10022 root@192.168.1.3 :/path/filename /local/path/filename’
2.5 其他命令 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 - 创建连接ln: `ln -op old_path new_path` -op: -s 为软连接 - 批量创建连接: 1.使用ln命令 <span style="font-size:18px;">ln -s /tmp/*.log /tmp/lnk/</span> 2.使用cp命令的参数-rs <span style="font-size:18px;">cp -rs /tmp/*.log /tmp/lnk/</span> - tar解压: `tar zxvf file.tar.gz` - tar压缩打包: ` tar zcvf file.tar.gz path(dir/files)` OP:-c 建立压缩文件 \-x 解开压缩包 \-z 具有gzip属性? \-j 同时具有bzip属性? \-f 使用档名,后立即接档名 * zip/unzip命令 zip -r zip_file.zip FilesDir unzip zip_file.zip \-r 递归处理,将指定目录下所有文件和子目录一并处理 **显示消耗内存最多的10个进程** ps aux | sort -nk +4 | tail **实时查看目录下最新改动过的文件** watch -d -n 1 'df; ls -FlAt /path' **找出最常用的10条命令** history | awk '{a[$2]++}END{for(i in a){print a[i] " " i}}' | sort -rn | head **vim 保存文件时发现需要 root 权限** :w !sudo tee% **计时器** time read **新建文件** \>file.txt **快速备份文件** cp filename{,.bak} **定时执行任务,一次性任务用 at,重复性任务用 cron \*** **echo cmd | at midnight //tomorrow, next week …** ***查看端口占用** netstat -tulnp **快速开启一个 smtp 服务**
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 jaytp@qq.com