liunx 最常用命令

1、ll  -a    相当于ls -al  列出当前文件夹下所有文件和文件夹(包含隐藏文件和文件夹)的详细信息

 

 2、ubuntu系统下docker容器内部无法使用ping命令

 先执行apt-get update命令,同步/etc/apt/sources.list 和 /etc/apt/sources.list.d 中列出的源的索引,这样才能获取到最新的软件包

apt-get update

在执行

apt-get install iputils-ping

 

 

3、反斜杠“\”:强制换行,这样复制命令到bash的时候可以自动换行,可以直接执行,如果没有强制换行符,会报错

docker run -d -p 3309:3306 --name mysql1master  \
 -v /home/mysqlcluster/1master1slave/master/data:/var/lib/mysql \
 -v /home/mysqlcluster/1master1slave/master/conf:/etc/mysql  \
 -v /home/mysqlcluster/1master1slave/master/log:/var/log/mysql  \
 -e MYSQL_ROOT_PASSWORD=123456 mysql:8.0.31

 

 

4、递归创建目录,即使上级目录不存在,会按目录层级自动创建目录

mkdir -p  多层目录

 

5、查找文档中9001然后用9002替换

 

6、chmod +x就是赋予用户文件的执行权限

chmod +x 文件名(包括扩展后缀)

然后就可以执行文件

./ 文件名(包括扩展后缀)

 

 

绿色文件: 可执行文件,可执行的程序

红色文件:压缩文件或者包文件

蓝色文件:目录

白色文件:一般性文件,如文本文件,配置文件,源码文件等

浅蓝色文件:链接文件,主要是使用ln命令建立的文件

红色闪烁:表示链接的文件有问题

黄色:表示设备文件

灰色:表示其他文件

 

 

7、查看磁盘使用空间 : df -TH

 

8、 执行二进制文件直接用:   ./filename      (打包二进制文件是没有后缀名的 )      后台使用: nohup command > filename 2>&1 &

 

 

 

 

 

 

9、修改文件夹以及文件夹内所有文件的权限

chmod -R 755  文件夹

 -R选项表示递归处理目录及其子目录下所有文件。

 

10、修改文件夹所属的用户

chown -R 用户编码:用户编码 文件夹

  -R选项表示递归处理目录及其子目录下所有文件。

 

 

11、将zip文件解压缩到temp文件夹

unzip aa.zip -d ./temp

 

12、文件中查找关键词,/后面跟查询词

/查询的关键词

 

13、查看文件内容

cat  file    全部显示文件


more file  分页显示文件


head  file   显示文件前10行


tail  file     显示文件后10行

 

14、文件移动和改名

mv    file1   file2      如果file2文件不存在,则file1改名为 file2


mv     file1   file2     如果file2存在,则file1改名为file2且覆盖掉file2文件



mv      file      dir      将file移动到dir目录中

 

15、vi编辑器命令

命令模式下:

:w    保存文件
:q     如果没修改文件,退出文件
:q!    退出编辑器,如果修改了文件,则恢复为未修改状态
:wq   保存文件修改,然后退出编辑器


o      在当前光标行下面新建空行
i        在当前光标前面添加文字
a       在当前光标后面添加文字

esc 从插入模式退出到命令模式

 

16、cd命令切换最近两次操作的目录

cd -                 从当前目录切换到上次操作目录

 

17、cp 命令

cp   /a/1.txt   .                将a文件夹的1.txt文件复制到当前目录

cp   /a/1.txt    ./2.txt       将a文件夹的1.txt文件复制到当前文件夹并且改名为2.txt


cp  -i  /a/1.txt  .             将a文件夹的1.txt文件复制到当前目录,如果当前目录存在1.txt
                                     并且与复制过来的1.txt不同,则提示是否覆盖

cp -r /a a1 将a文件夹内的内容复制到当前路径的a1文件夹内

 

18、tree命令

tree   /              以树状图的格式显示根目录下文件

tree   ~             以树状图的格式显示home目录文件


tree                  以树状图的格式显示当前目录文件

 

19、cat 命令

cat  -b   1.txt        显示文件内容和行号,忽略空行



cat -n    1.txt         显示文件内容和行号,不忽略空行

 

20、grep

grep -in     "hello world"   1.txt      从1.txt文件中忽略大小写,查找hello world字符串
                                                   -i表示忽略大小写,-n表示显示命中的行号

grep  -in ^h   1.txt                   从1.txt中查找以f开头的行,  ^f 是正则表达式


grep  -in d$   1.txt                   从1.txt中查找以d结尾的行,  d$ 是正则表达式

 

21、重定向 >  和>>  将终端的信息重定向到文件中

echo   hello world  > 1.txt    将输出到终端的hello world 重定向写入文件中

echo   welcome to china  >> 1.txt  将输出到终端的welcome to china 追加到1.tx
                                          如果使用> 则是覆盖原来的hello world

ls -lh >> 1.txt 将当前目录查询到的文件信息重定向追加到1.txt文件中

cat 2.txt >> 1.txt

 22、scp命令

/*将当前目录文件拷贝到远程机器home 下的file目录端口参数P要大写,:代表以home为起始地址的相对路径*/
scp  -P  22    1.txt    root@172.19.140.200:file  


/*将远程机器home/file目录下的文件1.txt拷贝到本地机器的当前目录*/
spc  -P 22  root@172.19.140.200:file/1.txt  .  


/*将远程机器home/file目录下的所有文件拷贝到本地机器的当前目录下localfile*/
scp  -P 22 -r  root@172.19.140.200:file    localfile

/* 将当前用户home目录下Desktop目录文件拷贝到远程机器home 下的file目录 */
scp -P  22 -r  ~/Desktop  root@172.19.140.200:file

 

23、ssh免密登录

/*两台liunx机器免密ssh登录*/


/* 先查询本地机器.ssh目录,然后进入home目录下的.ssh隐藏目录*/

ls -alh

cd  .ssh


/*生成ssh钥匙,执行下面命令,一路回车*/

ssh-keygen


/*上传本地机器公钥到远程服务器*/
ssh-copy-id -p 22  root@172.19.140.200

 24、ssh本地机器配置远程服务器别名,后面就可以使用别名代替ueer@ip

/* 在本机的~/.ssh目录下新建config文件*/
touch config



/*config文件写入以下内容*/
    Host   myserver
          HostName  172.19.140.200
          User   root
          Port    22

 25、查看用户组信息

cat  /etc/group

26 、修改文件夹所属组

/*修改文件夹所属组*/

sudo  chgrp -R 组名   文件夹名

/*修改文件所属组*/
sudo chgrp  -R 组名   文件名

 27、新建用户和设置密码

/* 新建一个用户user1 , 属于test组,-m 自动为新用户建立home下同名目录,-g指定用户组
,如果没有该参数,会自动建立同名的组*/
sudo  useradd   -m -g  test   user1

/* 给user1设置密码*/
sudo  passwd   user1

 28、删除用户和同名家目录

/*删除用户user1并且删除home下用户的同名目录*/

userdel  -r user1 

 29、查看用户id和组id

/* 查看user1用户的uid和组idgid*/
id  user1

 30、查看用户的主组和附加组信息

/* -n 是显示行号  查看group文件中user1的组信息*/

cat  -n  /etc/group  | grep  user1

 31、 给用户添加主组和附加组

/* 给用户user1添加到的devgroup这个主组,一般主组是在新建用户时添加,不使用下面的命令添加,小写的g是添加主组*/

usermod  -g   devgroup   user1



/* 给用户user1添加到的testgroup这个附加组,大写的g是添加附加组 ,sudo也是附加组,设置附加组后需要重新登录才可以使用*/

user mod -G   testgroup  user1  

 32、改变登录用户使用的shell

/*  用户user1使用bash登录*/

usermod  -s  /bin/bash        user1

 33、 切换用户

/* 从当前用户切换到user2,加-表示同时切换到user2的家目录,如果不加-只切换用户*/

su -  user2


/* 使用exit 退出user2用户,返回切换前的用户*/

exit  

/* 从当前用户直接切换到root用户*/
su   -

 34、 查看磁盘空间

/* 查看所有磁盘占用情况,-h 参数以人性化的方式显示磁盘容量*/

df -h  



/* 显示当前目录所有子目录占用情况*/

du -h 

 35、查看终端启动进程

/* 查看终端启动的进程状态,ps 是process status的缩写*/
/* a 显示终端所有进程,包括其他用户*/
/* u 显示进程的详细状态*/

ps au

/* 动态显示进程信息,并且排序,用q退出*/
top

 36、查找文件

/* 查找folder 下后缀为.txt的所有文件*/

find  folder   -name  "*.txt"

 37、软连接

/* 软连接类似于windows的快捷方式,sourcefile  可以是绝对路径也可以是相对路径,但是
使用相对路径移动后软连接可能无法使用,建议使用绝对路径*/

ln -s  sourcefile    softlinkname

 38、打包文件和解打包文件(不常用)

/*压缩文件*  -c 生成打包文件  -v列出归档和解档的详细过程,显示进度   -f 指定档案文件,f后面一定是.tar文件,f参数需要放最后,多个打包文件中间用空格,tar命令不压缩文件*/

tar -cvf   txt.tar   1.txt  2.txt  3.txt



/* 解压文件 -f需要放在最后*/

tar -xvf   压缩文件.tar

 39、压缩打包和解压缩打包(常用)

/* tar命令只负责打包,不负责压缩,gzip可以压缩打包后的tar文件,文件后缀为xxx.tar.gz
tar 可以使用-z参数调用gzip*/


tar -zcvf    xxx.tar.gz    1.txt   2.txt


/*解压缩文件*/

tar -zxvf   xxx.tar.gz



/*解压缩文件到某个目录*/

tar -zxvf   xxx.tar.gz   -C  解压目标路径

 40、#!命令  (读音为shebang)

# 通常是uninx脚本的第一行,指明执行这个脚本的解释程序,加上这个命令后,可以再liunx系统下直接输入文件名执行python程序


#! usr/bin/python3

 41、 Vi打开文件时,定位光标

//打开文件,光标在第一行
vi  文件名   


//打开文件,光标在最后一行
vi   文件名  + 


//打开文件  光标在指定10行

vi  文件名   +10

 

42、vi交换文件,修改文件后,未保存文件,直接关闭终端。再次打开文件时,需要删除交换文件

 

//英文输入法状态下,按下键盘的d键

d

 

45、 vi的三种工作模式

 

 

46、 vi末行命令,:后面跟的命令

w     // write    保存
q     //  quit    退出,如果修改了文件,没有保存,无法退出
q!   //   quit     强制退出,不保存文件也可以退出
wq  //  write & quit   保存并且退出
x    //                   保存并且退出

 47、 重复命令

20    命令       //命令重复20次

 

 

48、vi 整行移动光标

 49、vi行内移动光标

 

50、 vi翻页

 

51、定位某行

 

 

52、段落切换

 

53、括号切换()[]{}

 54、标记

 

55、vi可视模式

 

56、撤销和恢复撤销,撤销可以连续使用直到打开文件时的状态

 

57、删除命令

 

58、复制和粘贴

 

注意事项

 

 

59、替换命令

 

60、缩排和重复执行

 

61、查找单词

 

62、查找和替换

 

63、可视区域替换

 

64、确认替换

 

65、6个insert命令

 

66、增加多行注释

 

67、末行命令扩展

 

68、分屏命令

 切换分屏

 

posted @ 2023-01-03 15:31  无声袖箭  阅读(48)  评论(0)    收藏  举报