admin管理员组

文章数量:1583923

目录

文件管理

pwd-查看当前工作目录

cd-更改当前工作目录

touch-创建文件

mkdir-创建目录

cp-复制文件

mv-移动文件

rm-删除文件

tar-打包和压缩 

打包,压缩

解压,解包

查看文件内容

tree-查看目录结构及其子分支

vi-修改文件内容

文件类型

find-查找文件

locate-文件查找

ln-软链接

用户管理

id-显示用户信息

useradd-创建用户

passwd-设置或更改用户密码

userdel-删除用户

修改登录SHELL

su-切换用户

用户组管理

groupadd-创建组

groupdel-删除组

usermod-添加用户到组

gpasswd-添加用户到组

gpasswd-从组中删除用户

文件权限管理

Linux用户权限解析

权限对象:

查看权限:

权限类型:

chmod-设置权限:

chgrp-修改属组:

进程管理 

ps-静态查看进程

top-动态查看进程 

kill-杀死进程

nice-进程优先级

jobs-作业控制 

网络管理 

 nmtui-简易图形配置网络连接

ss-端口查看

netstat-端口查看

其他常用命令 

which-命令查找

whereis-命令查找

ssh-远程登陆

scp-远程拷贝

ssh-免密登录


文件管理

pwd-查看当前工作目录

pwd

cd-更改当前工作目录

cd /path/to/directory   # 进入指定目录
cd ..                   # 返回上一级目录
cd ~                    # 进入用户的主目录

touch-创建文件

语法:touch 文件名

创建一个文件

touch file1.txt

查看文件

ls
ls -l   #查看列表详细信息
ls -a   #查看全部文件,包括隐藏文件
ll      #查看列表详细信息,等于ls -l
ll -h   #查看列表详细信息,显示文件大小以K,M,G的方式显示,等于ls -l -h

mkdir-创建目录

语法:mkdir 空格 路径和目录名

当前路径下创建一个目录

mkdir dir1

选项:mkdir  -p   // 父系,当创建目录没有上一级时,自动创建

mkdir -p /dir1/dir2/dir3  #当前路径下没有dir1,dir2时会被自动创建

cp-复制文件

语法:cp  源文件路径  目标文件夹

选项:cp  -r    源目录    目标目录

cp filename dir1/
ls dir1/

看到复制的文件即可

mv-移动文件

语法:mv  源文件路径  目标文件路径

mkdir filename      #先创建一个文件
mv filename dir1/   #移动文件
ls dir1/            #查看移动的文件
mv filename1 filename2   #修改文件名

rm-删除文件

语法:rm -rf    文件或目录的路径

rm filename
rm -r /dir/filename #递归删除文件
rm -f /dir/filename #不再是否询问删除文件

tar-打包和压缩 

语法:tar -选项 源文件 目的路径

选项:v是显示解压/打包过程详情

打包,压缩

tar -cf etc.tar /etc              #压缩
tar -xf etc.tar /etc              #解压
tar -czvf etc-gzip.tar.gz /etc/   #z是zip
tar -cjf etc-bzip.tar.bz /etc/    #j是bip
tar -cJf etc-xzip.tar.xz /etc/    #J是xzip

 解压,解包

tar -tf etc.tar                 #查看,并没有解压
tar -xvf etc2.tar.bz2           #解压至当前路径
tar -xvf etc2.tar.bz2 -C /tmp   #-C重定向到/tmp目录

查看文件内容

cat查看文件全部内容

cat filename

tac 与 cat 命令刚好相反,文件内容从最后一行开始显示。

tac filename

less分页查看文件内容

less filename

more翻页查看文件

more filename

head查看文件头部内容

head filename
head -n 10 filename #查看文件前10行

tail尾部

tail filename
tail -n 10 filename #查看文件后10行

grep过滤关键字

针对文件内容进行过滤

语法:grep 关键字   文件名

grep 'abc' filename

前提是文件中要有abc哦,否则结果没有内容。

tree-查看目录结构及其子分支

tree
tree dirname    #指定目录

vi-修改文件内容

vi,vim

可视模式,按V进入,小v光标自己选取,大V直接选取一行,YY+p复制粘贴即可。

ctrl+V,上下选择,然后可以ctrl+>   进行整体缩进。

文本编辑

        yy 复制

        dd 删除

        p 粘贴

        u undo撤销

查找替换

        :范围 s/原内容/新内容/全局

        :1,5 s/root/qianfeng/g     从1-5行的root 替换为qianfeng

        :% s/原内容/新内容/全局

另存为

        :w file9.txt 另存为 file9.txt

光标定位

        hjkL    //上下左右

        0 $     //行首行尾

        gg G //页首页尾

        3G 进入第三行  

        /string (n N 可以循环的)     //查找字符,按n键选下一个(重要)

        :set nu 设置行号

        :set nonu 取消设置行号

        :set list 显示控制字符

文件类型

Linux 最经典的一句话是:「一切皆文件」,不仅普通的文件和目录,就连块设备、管道、socket 等,也都是统一交给文件系统管理的。

常见类型

        - 普通文件(文本文件,二进制文件,压缩文件,电影,图片。。。)

        d 目录文件(蓝色)

非常见类型

        b 设备文件(块设备)存储设备硬盘,U盘 /dev/sda, /dev/sda1

        c 设备文件(字符设备)打印机,终端 /dev/tty1

        l 链接文件(淡蓝色)

        s 套接字文件

        p 管道文件

查看不同的文件类型。你能找出几种呢?

ll /etc

注意

通过颜色判断文件的类型是不一定正确的!!!

Linux系统中文件是没有扩展名!!!

find-查找文件

语法:find  查找文件路径  选项 'filename'

find /path -name'filename'   #按文件名称
find /path +5M'              #按文件大小,+(大于) -(小于) =(等于)
find /Maxdepth 4 -a -name'filename'   #指定目录深度
find /path -user jack        #按属主
find /path -group it         #按属组
find /tmp -type f            #按文件类型,f普通文件 b块设备文件 d目录 p管道 l链接
find . -perm 644 -ls         #按文件权限
find /etc -name "775*" -delete #找到后删除
find /etc -name "hosts*" -ok cp -rvf {} /tmp \   #找到后复制

locate-文件查找

[root@localhost ~]# updatedb        #更新locate数据库
[root@localhost ~]# locate hosts    #查找hosts文件
/etc/hosts
/etc/samba/lmhosts
/usr/bin/sss_ssh_knownhostsproxy
/usr/lib64/security/pam_rhosts.so
/usr/share/doc/pam/README.d/README.pam_rhosts
/usr/share/man/de/man1/sss_ssh_knownhostsproxy.1.gz
/usr/share/man/fr/man1/sss_ssh_knownhostsproxy.1.gz
/usr/share/man/ja/man1/sss_ssh_knownhostsproxy.1.gz
/usr/share/man/man1/sss_ssh_knownhostsproxy.1.gz
/usr/share/man/man5/hosts.5.gz
/usr/share/man/man5/hosts.equiv.5.gz
/usr/share/man/man5/lmhosts.5.gz
/usr/share/man/ru/man1/sss_ssh_knownhostsproxy.1.gz
/usr/share/man/sv/man1/sss_ssh_knownhostsproxy.1.gz
/usr/share/man/uk/man1/sss_ssh_knownhostsproxy.1.gz
/usr/share/vim/vim80/ftplugin/denyhosts.vim
/usr/share/vim/vim80/ftplugin/hostsaccess.vim
/usr/share/vim/vim80/syntax/denyhosts.vim
/usr/share/vim/vim80/syntax/hostsaccess.vim
/usr/share/zsh/site-functions/_sd_hosts_or_user_at_host

ln-软链接

ln -s /sourcefile /destfile

用户管理

id-显示用户信息

id
id -u   #仅显示UID
id -r   #仅显示实际的ID
id -g   #仅显示用户的基本组ID
id -G   #仅显示用户所属的所有组ID
id -n   #显示名称,而非ID

useradd-创建用户

useradd username

创建用户user02,指定uid

useradd username -u 1001

创建用户user03 指定家目录

useradd username -d /username

passwd-设置或更改用户密码

passwd username

userdel-删除用户

userdel username
userdel -f username   #强制删除用户

修改登录SHELL

usermod -s /sbin/nologin username

su-切换用户

su username       #以root身份登录用户
su - username     #以用户身份登录用户

用户组管理

groupadd-创建组

groupadd groupname
tail -3 /etc/group   #查看,或者
grep 'groupname' /etc/group

groupdel-删除组

groupdel groupname
tail -3 /etc/group   #查看,或者
grep 'groupname' /etc/group

usermod-添加用户到组

查看用户原信息

id username
uid=1002(username) gid=1002(username) 组=1002(username)

语法:usermod aG 组名 用户名

usermod username -aG groupname

gpasswd-添加用户到组

gpasswd -a username groupname

再次查看用户信息

id username
uid=1002(username) gid=1002(username) 组=1002(username),1005(hr)

gpasswd-从组中删除用户

gpasswd -d username groupname

文件权限管理

Linux用户权限解析

权限对象:

        属主: u

        属组: g

        其他人: o

        所有人:a(u+g+o)

查看权限:

ls -l filename
-rw-r--r--.   1   root root  179  5月  25  14:27  filename

       -rw-:属主的权限,读写

        r--:属组的权限,读

        r--:其他人的权限,读

        1:第2字段的值为1,说明文件只有这一个文件名。即只有一个指向该链接的硬链接。

        root:文件的属主

        root:文件的属组

        179:文件大小

        5月  25  14:27:时间

        filename:文件名称

权限类型:

        读:r=4

        写:w=2

        执行: x=1

chmod-设置权限:

使用符号:u用户 g组  o其他  r读   w写  x执行

语法: chmod   对象(u/g/o/a)赋值符(+/-/=)权限类型(r/w/x)    文件/目录

选项:-R 针对目录中所有的文件。

chmod 644 filename   #设置一个文件属主读写,属组读,其他人读权限
ll filename
-rw-r--r--. 1 root root    0 7月  25 13:42 filename
chmod +x filename   #赋予文件所有者执行权限
ll
-rwxr-xr-x. 1 root root    0 7月  25 13:42 filename
chmod -r filename   #收回文件所有者读权限
ll
--wx--x--x. 1 root root    0 7月  25 13:42 filename
chmod xiaoming filename   #只改属主
chmod .hr filename   #只改属组

chgrp-修改属组:

chgrp: 设置一个文件属于哪个组

语法:chgrp 组名 文件 

选项:-R是递归修改文件

chgrp groupname filename

进程管理 

ps-静态查看进程

ps -ef
ps -aux

top-动态查看进程 

top

kill-杀死进程

kill -9 processId    #非法杀死进程
kill -15 processId   #正常终止进程

nice-进程优先级

ps -aox | grep processId  #查看进程优先级
renice -20 processId   #指定进程id的优先级为-20
ps -aox | grep processId  #再次查看进程优先级

jobs-作业控制 

sleep 3000 &   #后台运行一个程序
jobs           #查看后台运行程序
fg 1           #将作业1调回到前台
kill %1        #杀死作业序号为1的后台程序

网络管理 

 nmtui-简易图形配置网络连接

nmtui

ss-端口查看

ss -tnl

netstat-端口查看

netstat -tnlp

其他常用命令 

which-命令查找

[root@localhost ~]# which ls
alias ls='ls --color=auto'
	/usr/bin/ls

whereis-命令查找

[root@localhost ~]# whereis ls
ls: /usr/bin/ls /usr/share/man/man1/ls.1.gz /usr/share/man/man1p/ls.1p.gz

ssh-远程登陆

语法:ssh [options] [user@]ipaddress [command]

选项:

  • -l user:指定要登录的用户。
  • -p port:指定连接到远程主机的端口号,默认是22。
  • -i identity_file:指定身份验证文件(私钥文件)。
  • -v:详细模式,可以显示调试信息。
  • -C:启用压缩。
  • -N:不执行远程命令,只进行端口转发。
  • -f:后台运行。
  • -L local_port:remote_host:remote_port:本地端口转发。
  • -R remote_port:local_host:local_port:远程端口转发。
  • -D [bind_address:]port:动态应用程序级端口转发。
ssh username@remote_ip
ssh -p 2024 username@remote_ip               #指定端口登录
ssh -i /path/to/private_key user@remote_ip   #使用身份验证文件
ssh user@remote_ip command                   #在远程主机上执行命令
ssh -v user@remote_ip                        #详细模式
ssh -C user@remote_ip                        #启用压缩
ssh -f -N user@remote_ip                     #后台运行且不执行命令
ssh -L local_port:remote_host:remote_port user@remote_ip   #本地端口转发
ssh -R remote_port:local_host:local_port user@remote_ip    #远程端口转发
ssh -D [bind_address:]port user@remote_ip                  #动态端口转发
ssh -A user@remote_ip                        #启用代理转发
ssh -X user@remote_ip                        #启用 X11 转发

scp-远程拷贝

语法:scp [可选参数] file_source file_target

选项:

  • -1: 强制scp命令使用协议ssh1
  • -2: 强制scp命令使用协议ssh2
  • -4: 强制scp命令只使用IPv4寻址
  • -6: 强制scp命令只使用IPv6寻址
  • -B: 使用批处理模式(传输过程中不询问传输口令或短语)
  • -C: 允许压缩。(将-C标志传递给ssh,从而打开压缩功能)
  • -p:保留原文件的修改时间,访问时间和访问权限。
  • -q: 不显示传输进度条。
  • -r: 递归复制整个目录。
  • -v:详细方式显示输出。scp和ssh(1)会显示出整个过程的调试信息。这些信息用于调试连接,验证和配置问题。
  • -c cipher: 以cipher将数据传输进行加密,这个选项将直接传递给ssh。
  • -F ssh_config: 指定一个替代的ssh配置文件,此参数直接传递给ssh。
  • -i identity_file: 从指定文件中读取传输时使用的密钥文件,此参数直接传递给ssh。
  • -l limit: 限定用户所能使用的带宽,以Kbit/s为单位。
  • -o ssh_option: 如果习惯于使用ssh_config(5)中的参数传递方式,
  • -P port:注意是大写的P, port是指定数据传输用到的端口号
  • -S program: 指定加密传输时所使用的程序。此程序必须能够理解ssh(1)的选项。

 从本地复制到远程:

scp local_file remote_username@remote_ip:remode_folder           #指定远程文件夹
scp local_file remote_username@remote_ip:remode_file             #指定远程文件名
scp local_file remote_ip:remode_folder                           #指定远程文件夹
scp local_file remote_ip:remode_file                             #指定远程文件名
scp -r /home/space/music/ root@www.runoob:/home/root/others/ #递归复制整个目录
scp -r /home/space/music/ www.runoob:/home/root/others/ 

 从远程复制到本地:

scp root@remote_ip:/home/root/music /home/music/test.mp3 
scp -r remote_ip:/home/root/others/ /home/music/

指定端口号:

scp -P 4588 remote@remote_ip: /tmp/test.txt /home/administrator

ssh-免密登录

ssh-keygen                    #然后一顿回车
ssh-copy-id remote_ip         #将密钥发送给远程主机,此步之后要求输入root用户密码
ssh remote_ip                 #测试,观察还用不用输密码

看完记得点赞+收藏哦,以免不慎丢失!

本文标签: 这一入门基础收藏常用命令