Linux 命令大全

  1. 2.2文件及目录操作命令:
  2. 2.3 权限操作命令:
  3. 2.4 网络操作命令
  4. 2.5 其他命令

Linux 命令大全

开启SSH服务

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 #关闭

系统管理命令

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

文件及目录基本命令

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    显示文件头、尾内容                 

文件权限管理

chmod	[]	#更改文件权限,r是读,w是写,x是执行权限
chown		#更改文件、目录拥有者
chgrp		#更改用户组

打包压缩相关命令

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使用

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 向上滚动一屏  

用户及用户组管理

/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  

硬盘操作

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
  • 编辑文件vim
    vim file
    编辑按i键 退出按ESC 再按:
    :q 为退出不写入
    :wq 为写入并退出
    :!q 为强制退出
  • 查看文件内容:
    cat file

2.3 权限操作命令:

  • chown设置文件/目录拥有者:
    chown user path(dir/files)

  • chmod设置文件目录权限:
    chmod -R 777 path(dir/file)
    这里的777是权限:r=4、w=2、x=1、无权限=0

    属主:rwx=4+2+1=7

    属组:r-x=4+0+1=5

    其他:—=0+0+0=0

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 其他命令

- 创建连接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 服务** 

转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 vault@coolxy.cn

×

喜欢就点赞,疼爱就打赏

github