Linux常用命令使用总结

296 阅读5分钟

1. 重定向

把终端命令输出的信息,保存到指定文件中

>  覆盖 文件中"w"
>> 追加到文件末位。相当于文件中"a"

echo 输出信息显示到屏幕上

2. 查看文件内容

查看文件内容:

  1. cat 适合查看一屏显示显示的内容 可以同时查看多个文件

    • 合并文件,配合重定向    cat 1.txt 2.txt >> 3.txt    

  2. more 适合查看多屏文件,分屏查看文件内容

    • 翻一行 enter 回车

    • 向下翻一屏 space 空格 f (forward)

    • 向上翻一屏 b (back)

    • q (quit)

  3. 管道(一个命令的输出,作为另一个命令的输入)

    和 more 配合使用,分屏查看文件信息 ps: 管道命令不能按b回头查看上一屏的内容。

3. 链接命令

3.1 软链接

Windows 的快捷方式

ln -s 源文件路径(绝对路径)  快捷方式名字
  1. 要使用绝对路径

  2. -s 选项必须存在,如果不存在,创建的不是软链接,是硬连接

  3. 可以对目录进行软链接

3.1 硬连接

文件的别名:硬盘中放一份,硬连接计数(ls -l)可以查看文件存在的硬连接数量,当硬连接计数为0 的时候,文件删除,相当于对数据容器的引用。

ln 源文件  新文件名字
  1. 相对路径和绝对路径都可以

  2. 不能对目录进行硬连接

4. 文本搜索命令

grep 文本搜索

grep "str" 文件
  • -i 忽略大小写

  • -n 显示匹配内容的行号

  • -v 显示不匹配的内容

  • "^" 以指定字符开头

  • $ 以指定字符结尾

  • . 匹配一个非换行的字符

  1. 上边所有可以配合使用

  2. 还可以和 | 配合使用

grep '^[at]' test.txt -n 
 匹配以a或t开头
4:append aaaa
7:aaa
8:ttt

5. 查找文件命令

find 查找文件

find 查找的目录 以什么方式查找(-name) 文件名
find . -size +4k     查找当前目录大于4k的文件
find ./ -perm 777   以权限进行搜索

可以和通配符进行使用

  • * 任意字符

  • ? 代表一个字符

find . -name "?.txt"

find . -name "a?.txt"

find . -name "a*"

6. 压缩和解压缩命令

tar

tar -zcvf file.tar.gz 要打包压缩的文件  压缩的文件
tar -zxvf file.tar.gz -C 指定目录(不指定,解压缩到当前目录) 目录要存在才能解压
tar -jcvf file.tar.bz2  要压缩的文件
tar -jxvf file.tar.bz2 -C 指定目录​如何参数只跟-cvf 也能进行打包,但是没有压缩。

zip

zip file.zip 要压缩的内容unzip file.zip -d 目录(默认当前)

rar

sudo apt install rar

rar a -r flie.rar
rar x  解压

7. 文件权限命令

-rw-rw-r--

前三个rw- 文件拥有者所有的权限(所属用户)u

中间三个rw- 所属组用户的权限 g

最后三个r-- 其他用户的权限 o

  • r read 读

  • w write 写

  • x excute 执行

  • - 没有权限

  • u user

  • g group

  • o other

  • a all

权限

  • r 4

  • w 2

  • x 1

  • - 0

字母法修改

chmod a/u/g/o +/-/= r/w/x/- file

数字法

chmod 664 file 

  1. 第一个数字 所属用户

  2. 第二个 所属组

  3. 第三个 其他用户

8. 获取管理员权限

  1. 获取管理员权限

    • sudo 临时获取管理员权限

    • sudo -s 进root passwd python 可修改python用户密码,用简单密码

    • su root 切换到root

    • su python 切换到python用户

  2. 退出用户 exit

  3. whoami 当前登录用户

  4. who 当前有谁等过

  5. passwd

    • 默认修改当前用户密码

    • user 修改 user用户密码

  6. which 命令

  7. 关机重启

    • shutdown -h now 立刻关机

    • shutdown -h + 10 10分钟后关机

    • shutdown -h 21:00 21:00 关机

    • shutdown -c 取消

    • reboot

9. 用户操作

  1. 添加/删除用户 加上sudo创建(确保自身在sudo组才能使用sudo)ps:针对ubuntu系统

    • useradd

      • -m 自动创建主目录

      • -g 指所属组,默认会创建和用户名同名的组

    • id 查看用户信息

    • /etc/passwd 用户是否成功

    • /etc/group 组是否成功

    • usermod -G 组名 用户

      • -g 修改

    • gpasswd -d 用户 组名 删除附加组

      • -a 添加

    • userdel -r user 家目录一块删除

10. 用户组操作⭐️

  • 添加组 sudo groupadd 组名

  • 创建用户时指定组 sudo useradd -m -g 组名 用户名

  • 删除组 sudo groupdel 组名(组下没有用户)先改用户组或者删除用户(想象一下栈的结构,先进后出,切换用户用其他用户并不能直接删除,必须退出登录才行)

  • 修改用户所属组 sudo usermod -g 组名 用户名

11. 远程操作命令

使用前 先安装 openssh-server

sudo apt intstall openssh-server

ssh 远程登录

ssh user@ip    用户名@ip地址

scp

scp -r 本地文件或目录 user@ip:/home/python/   (拷贝目录加上-r,下面命令一样)   # 向远程拷贝文件
scp -r user@ip:/home/python/  dist(拷贝放置的本地路径)        # 远程拷贝目标
    • PS:向哪个地方拿东西,哪个路径写在前面。

软件安装

 deb sudo dpkg -i xxx.deb(离线安装文件)

apt (16.04 之后,之前 apt-get) (推荐更换软件源)ps:针对ubuntu

          sudo apt update      更换软件源

          sudo apt install xxx   安装xxx应用

软件卸载

deb

  • sudo dpkg -r包名

apt

 sudo apt remove xxx   卸载xxx应用