写点什么

来不及解释!Linux 常用命令大全,先收藏再说

发布于: 2021 年 01 月 15 日

摘要:Linux 常用命令,很适合你的。


一提到操作系统,我们首先想到的就是 windows 和 Linux。Windows 以直观的可视化的方式操作,特别适合在桌面端 PC 上操作执行相应的软件。相比较 Windows 来说,Linux 的很多管控都需要用命令来操作。


Linux 命令行方式的操作,特别是在服务器端编程、管理、运维方面,都非常的简单、短小、精悍。短短一行组合命令,即可完成在 Windows 需要各种加工、整合的复杂高效的功能操作。 不信,下面全都是。


启动网络命令


ip addr 查看网卡信息


service network start 启动网卡service network stop 关闭网卡service network restart 重启网络
复制代码


pwd 命令


pwd 命令,查看当前目录的路径


linux 下所有的绝对路径都是从根目录"/"开始


/root:是 linux 下 root 用户的根目录


/home:是 linux 下其他用户的默认根目录 (例如:在 linux 上创建了一个 bow 用户,那么就会在/home 下面生成一个 bow 目录作为 bow 用户的根目录)


/etc:是 linux 下系统配置文件目录


/tmp:临时文件目录,所有用户都可以用


ls 命令


ls [参数] 目录路径

ls 表示查看目录下的文件


ls #表示查看当前目录下的文件ls -l #表示查看当前目录下的详细信息ls -a #表示查看当前目录下的所有文件(包含隐藏文件)ls -la #表示查看当前目录下的所有文件(包含隐藏文件)的详细信息ls -lh #h是以适当的单位来显示文件的大小 ls -lh表示查看当前目录下的文件的详细信息,并以合适单位显示文件大小  ls -l / #表示查看根目录"/"下文件的详细信息 ls /etc #表示查看目录/etc下的文件 ls --help #查看命令的帮助文档--help参数:所有linux上的命令都有,但写法上有如下几种: (1)--help  (2)--h  (3)-help  (4)-hll命令:它和ls -l命令功能相同,但是不是所有的linux上都默认安装
复制代码


cd 命令


cd 目录路径 #进入一个目录,目录路径可以是绝对路径(以/开始的路径都是绝对路径),也可以是相对路径

相对路径:以非/开始的路径,

注意: "."表示当前目录

"…"表示当前目录的上一级目录,它可以多个一起使用

"~"表示当前用户的根目录 例如:root 用户时,~表示/root 目录 bow 用户时,~表示/home/bow 目录


cd / #表示进入系统根目录cd usr/ #表示进入当前目录下的usr目录cd local/ #表示进入当前目录下的local目录cd ./bin #表示进入当前目录下的bin目录cd .. #表示进入当前目录的上一级目录cd ../.. #表示进入当前目录的上级目录的上一级目录cd /usr/local/bin #进入/usr/local/bin目录cd ../etc #表示进入和当前目录同级的etc目录 #..表示当前目录的上一级目录 ../etc表示当前目录上级目录下的etc目录(和当前目录同级)cd ~ #表示进入当前用户的根目录(cd ~ 和直接执行cd后不加目录的效果相同) #例如:root用户进入/root目录,bow用户进入/home/bow目录 cd ~/data #表示进入当前用户根目录下的data目录 例如:root用户则进入了/root/data目录
复制代码


mkdir 命令


mkdir 目录路径 #创建一个目录,目录路径可以是绝对路径也可以是相对路径


mkdir data #在当前目录下创建一个data目录mkdir ./dir #在当前目录下创建一个dir目录mkdir /root/tmp #在/root目录下创建一个tmp目录
复制代码


mkdir 创建目录时,只有在目录的上级目录存在时,才会创建


mkdir -p 目录 #创建目录时,如果没有父目录,会创建父目录,递归地创建目录


mkdir -p a/b/c #在当前目录下创建 3 级目录


rmdir 命令


rmdir [参数] 目录路径 #删除目录命令,rmdir默认只能删除空目录 rmdir ./dir #删除当前目录下的dir目录 rmdir -p 目录路径 #表示删除目录和它的父目录(目录要是一个空目录)rmdir -p a/b/c #删除当前目录下的a/b/c目录
复制代码


touch 命令


touch 命令 #创建文件命令


touch 文件路径


touch 1.txt #在当前目录下创建一个1.txt文件touch /root/2.txt #在/root目录下创建一个2.txt文件
复制代码


rm 命令


rm [参数] 路径 #删除命令


rm 1.txt #删除当前目录下的 1.txt 文件,删除时会提示,是否删除如果输入 y 表示删除,输入 n 表示不删除


rm -f /root/2.txt #-f 表示强制删除,不会提示,强制删除/root 目录下的 2.txt


rm -r a/ #递归的删除当前目录下a目录下的所有内容[root@bow ~]# rm -r a/rm:是否进入目录"a/"? yrm:是否进入目录"a/b"? yrm:是否进入目录"a/b/c"? yrm:是否删除普通空文件 "a/b/c/3.txt"?yrm:是否删除目录 "a/b/c"?yrm:是否删除普通空文件 "a/b/2.txt"?yrm:是否删除目录 "a/b"?yrm:是否删除普通空文件 "a/1.txt"?yrm:是否删除目录 "a/"?yrm -rf a/ #强制删除当前目录下a目录及a目录下的所有内容 rm -rf * #删除当前目录下的所有内容rm -rf a/* #删除当前目录下a目录下的所有内容rm -rf *.txt #删除当前目录下的所有txt文件rm -rf *s* #删除当前目录下所有名字中包含s的文件或文件夹
复制代码


echo 命令


echo #输出命令,可以输入变量,字符串的值


echo Hello World #打印Hello Worldecho $PATH #打印环境变量PATH的值,其中$是取变量值的符号,用法:$变量名 或者 ${变量名} echo -n #打印内容但不换行echo -n Hello World 
复制代码


>和>>命令


和>>:输出符号,将内容输出到文件中,>表示覆盖(会删除原文件内容) >>表示追加


echo Hello World > 1.txt #将Hello World输出到当前目录下的1.txt文件 #如果当前目录下没有1.txt文件会创建一个新文件,  #如果当前目录下有1.txt,则会删除原文件内容,写入Hello Worldecho 1234 >> 1.txt #将1234追加到当前目录下的1.txt中,如果文件不存在会创建新文件
复制代码


通过>和>>都可以创建文件


文件查看命令


cat 文件路径 #查看文件的所有内容


cat 1.txt #查看当前目录下1.txt的内容cat /root/1.txt #查看/root目录下的1.txt文件内容
复制代码


more 文件路径 #分页查看文件内容


more linux 常用命令.txt #分页查看当前目录下 linux 常用命令.txt 文件的内容


#按空格或回车,会继续加载文件内容,按 q 退出查看


#当加载到文件末尾时,会自动退出查看


less 文件路径 #分页查看文件内容


less linux 常用命令.txt #分页查看文件内容,按空格继续加载文件,按 q 退出查看,不会自动退出查看


head [参数] 文件路径 #从文件开始查看文件


head linux常用命令.txt #查看文件的前10行内容 head -n 文件路径 # n是一个正整数,表示查看文件的前n行数据head -20 linux常用命令.txt #查看文件的前20行内容
复制代码


tail [参数] 文件路径 #从文件的末尾查看文件内容


tail linux 常用命令.txt #查看文件的后 10 行内容


tail -n 文件路径 # n是一个正整数,表示查看文件的后n行数据tail -15 linux常用命令.txt #查看文件后15行内容 tail -f 文件路径 #动态的查看文件的最后几行内容(查看文件时,等待文件更新,如果文件更新了,会显示出新的内容)
复制代码


tail -f 1.txt #查看文件 1.txt 的最新内容,tail -f 一般用来查看日志文件 按 CTRL+C 或才 CTRL+Z 退出查看


CTRL+C:表示暂停进程CTRL+Z: 表示停止进程
复制代码


文件编辑命令


vi/vim 命令:这两个命令在使用上几乎完全一样(个人喜欢 vim 命令)


安装 vim 命令:(安装是需要网络的)


 yum -y install vim
复制代码


yum 命令是 centos 和 red hat 系统上使用官方资源包去安装软件的命令


yum -y install 软件名yum -y remove 软件名
复制代码


查看虚拟机能不能上外网:


ping www.baidu.comCTRL+C或者CTRL+Z退出
复制代码


vim 命令总体分为两类


vim 文件路径 --进入非编辑模式


非编辑模式命令:


yy:复制光标当前行p:粘贴dd:删除光标当前行$:光标跳到当前行的行尾^:光标跳到当前行的行首 :s/原字符串/新字符串/:替换光标当前行内容:%s/原字符串/新字符串/g:全文替换 #g表示global i表示ignore忽略大小写 /要查找的内容:从光标当前行向后查找内容/d #在文件中查找d字母?要查找的内容:从光标当前位置向前查找内容?d #查找文件中的d字母CTRL+F:向下翻1页CTRL+B:向上翻1页 :set nu:显示文件的行号:set nonu: 去掉行号显示u:撤消 **:set ff :显示文件的格式 #unix表示在unix上的文件 dos表示文件是windows上的文件**:w :表示保存文件:q :表示退出vim命令:wq:保存并退出:w!:强制保存:q!:强制退出但不保存:wq!:强制保存并退出i:表示进入编辑模式,并且光标在当前行o:表示进入编辑模式,并且光标出现的当前行的下一行(新行)
复制代码


编辑模式命令:


编辑模式下可以能过方向键控制光标的位置,并且可以输入文件到光标当前位置


 ESC:退出编辑模式
复制代码


cp 命令


cp 拷贝命令


cp [参数] 原文件路径 目标文件路径


cp 1.txt a/ #将1.txt文件拷贝到a目录下cp 1.txt 2.txt #将1.txt拷贝到2.txtcp -r a data #-r参数表示将目录和目录下的文件一起拷贝,将a目录拷贝到data目录
复制代码


scp 命令


scp 远程拷贝命令,它可以将本地文件拷贝到远程服务器,也可以将远程服务器的文件拷贝到本地,也可以将一台服务器文件拷贝到另一台


scp -r 本地文件路径 用户名@ip[:port]:远程路径 #将本地文件拷贝到远程服务器scp -r 2.txt root@192.168.5.105:/root/data/ #将本地的2.txt拷贝到192.168.5.105的/root/data目录下 scp -r 用户名@ip[:port]:远程文件路径 本地路径 #将远程文件拷贝到本地scp -r root@192.168.5.105:/root/3.bak /root/data #将远程的/root/3.bak文件拷贝到本地的/root/data目录
复制代码


scp -r 用户名 @ip[:port]:远程文件路径 用户名 @ip[:port]:远程文件路径 #将文件从一台服务器拷贝到另一台服务器


scp -r root@192.168.5.105:/root/tmp root@192.168.5.105:/root/data/ #将/root/tmp拷贝到远程的/root/data目录下
复制代码


mv 命令


mv 移动命令,它可以移动文件,也可以给文件改名


mv 原文件路径 目标文件路径 #将文件从一个地方拷贝到另一个地方


mv 1.txt 12.txt #将文件1.txt改名为12.txtmv tmp tmp #将tmp目录改名为tmmv 12.txt tm #将文件12.txt移动到tm目录下
复制代码


man 命令


man 命令,查看命令的命令,查看命令帮助文档(显示的信息最详细)


man mv #查看mv命令的文件 man命令和命令的 --help参数结果相似(man命令只适用于linux本身的命令)
复制代码


free 命令


free 命令,它是用来查看系统内存的命令


free #查看系统内存使用情况free -h #查看内存使用情况,并且以合适的单位显示大小
复制代码


df 命令


df 命令,它是查看系统硬盘的命令


df #查看系统硬盘使用情况df -h #查看硬盘使用,并以合适单位显示大小
复制代码


wc 命令


wc 命令,word count 的缩写,它是查看文件的单词个数


wc [参数] 文件


wc -l linux常用命令.txt #-l表示line行数 计算文件的行数wc -w linux常用命令.txt #-w表示word单词个数 计算文件的单词个数
复制代码


ps 命令


ps 命令,它是查看系统进程的命令


ps -aux


ps -ef


jps 查看 java 进程


kill 命令


kill 进程 id #结束进程


root 21752 1.6 0.5 158800 5532 ? Ss 08:34 0:00 sshd: root@pts/0
复制代码


kill 21752 #结束 ssh 登陆的进程


kill -9 进程 id #强制结束进程


用户和权限命令


创建用户组:


groupadd 用户组名称 #创建一个用户组


groupadd bows #创建一个叫bows的用户组删除用户组:groupdel 用户组名称 #删除一个用户组(删除时必须是用户组下没有用户时)groupdel bows #删除用户组
复制代码


创建用户:


useradd 用户名 [-g 用户组名 -G 用户组名] #创建一个用户,-g 指定用户的主用户组,-G 指定用户的其他用户组


useradd bow -g bows #创建bow用户,并指定它的主用户组是bowsid 用户名 #查看用户的idid bow #查看用户bow的id
复制代码


删除用户:


userdel 用户名 #删除用户userdel bow #删除用户bow
复制代码


切换用户:


su 用户名 #切换用户,但不加载用户的环境变量su - 用户名 #切换用户,并加载用户的环境变量(建议使用这种方式切换用户)su bow #切换到bow用户(root用户切换到其他用户是不需要输入密码的,其他用户切换到root用户是要输入root用户密码的,其他用户之间的切换也是需要密码)exit #退出当前用户的登陆
复制代码


修改用户密码:


passwd 用户名 #修改用户密码passwd bow #修改bow用户的密码
复制代码


权限:


文件类型        用户权限       用户组权限       其他用户权限-                 rw-              r--             r--                . 1 root root 5890 3月 23 14:11 linux常用命令.txtd                 rwx              r-x             r-x                . 4 root root  81 3月 24 08:06 datad表示文件夹    u表示用户权限   g表示用户组权限   o表示其他用户权限 r:表示读权限 数字表示为4w:表示写权限 数字表示为2x:表示执行权限 数字表示为1-:表示没有权限
复制代码


chmod 赋权限命令


chmod 权限 文件路径-rw-r--r--. 1 root root   31 3月  24 07:46 2.txtchmod u+x 2.txt #给用户加上执行权限-rwxr--r--. 1 root root   31 3月  24 07:46 2.txtchmod g+w 2.txt #给用户组加写权限-rwxrw-r--. 1 root root   31 3月  24 07:46 2.txtchmod o+x 2.txt #给其他用户加执行权限-rwxrw-r-x. 1 root root   31 3月  24 07:46 2.txtchmod g-w 2.txt #去掉用户的写权限 -rwxr--r-x. 1 root root   31 3月  24 07:46 2.txt
复制代码


用 3 个数字来设置文件或目录的权限,第 1 个数字表示用户权限,第 2 数字表示用户组权限,第 3 个数字表示其他用户权限


chmod 755 2.txt #设置用户的权限为rwx,用户组的权限r-x,其他用户的权限r-x-rwxr-xr-x. 1 root root 31 3月 24 07:46 2.txtchmod 766 2.txt #设置用户权限为rwx,用户组权限rw-,其他用户的权限rw--rwxrw-rw-. 1 root root 31 3月 24 07:46 2.txt
复制代码


设置目录权限时,要使用-R 参数,保证目录下的所有文件和目录的权限相同


drwxr-xr-x. 4 root root 81 3月 24 08:06 datachmod -R 777 data #将data目录以及它下面的所有文件的权限设置为rwxrwxrwxdrwxrwxrwx. 4 root root 81 3月 24 08:06 data
复制代码


chown 命令,它是更改文件所属用户


chown -R 用户[:用户组] 目录或文件-rwxrw-rw-. 1 root root 31 3月 24 07:46 2.txtchown bow 2.txt #将2.txt的所属用户改为bow-rwxrw-rw-. 1 bow root 31 3月 24 07:46 2.txtchown bow:bows 2.txt #将2.txt所属的用户改为bow,用户组改为bows-rwxrw-rw-. 1 bow bows 31 3月 24 07:46 2.txtdrwxr--r--. 4 root root 81 3月 24 08:06 datachown -R bow:bows data #将data目录及它子目录文件的所属用户改为bow,用户组改为bowsdrwxr--r--. 4 bow bows 81 3月 24 08:06 data
复制代码


查找命令


find 命令,可以根据文件的时间,名称等查找文件


find *.txt #查找txt文件
复制代码


grep 命令,查找内容


grep cat linux常用命令.txt #在linux常用命令.txt文件中查询包含cat的行,查找文件内容
复制代码


| 通道符号,连接两个命令的,将前一个命令的查询结果传给后一个命令


ps -ef | grep sshd #查看系统中sshd的进程 ps -ef | grep java #查看所有java进程grep -v #-v参数表示查询不包含查找条件的行grep -v cat linux常用命令.txt #查找linux常用命令.txt中不包含cat的行 ps -ef | grep sshd | grep -v grep #查询sshd的进程,不包括grep的行
复制代码


–了解性查询命令


who命令 #查询系统中的用户(登陆的用户)whoami命令 #查看系统当前用户名whereis命令 #查看系统安装的某个软件的路径whereis python #查看python的安装路径which 命令 #查找软件的可执行文件路径 which python #查看python可执行文件路径
复制代码


压缩命令


安装 zip 和 unzip 命令:


yum -y install zip unzip
复制代码


zip 压缩命令


zip 压缩文件名 要压缩的文件路径


zip 2.zip 2.txt #将2.txt压缩到2.zip中 zip data.zip data #只会压缩文件夹,不会压缩文件夹下的内容 zip da.zip da/* #压缩文件夹和文件夹内的文件(压缩文件夹和它的下一级文件)  zip -r data.zip date #-r表示递归地将文件夹及它的子目录文件全部压缩 
复制代码


unzip 解压命令


unzip 压缩文件路径


unzip 2.zip #将2.zip压缩包解压到当前目录下unzip -l 压缩文件名 #不解压文件,查看压缩包内的文件unzip -l da.zip #查看da.zip压缩文件中包含的文件unzip da.zip -d 目标目录 #将压缩文件解压到指定目录 unzip da.zip -d tm/ #将压缩文件da.zip解压到tm目录下
复制代码


tar 命令,用来压缩和解压缩.tar 和.tar.gz 包


压缩.tar 包:


tar cvf 压缩文件名 要压缩的文件或目录tar cvf 2.tar 2.txt #将2.txt压缩为2.tar包tar cvf data.tar data #将data目录夸张到data.tar包中
复制代码


解压.tar 包:


tar xvf 压缩文件名 [-C 指定解压目录]


tar xvf 2.tar #将2.tar解压到当前目录tar xvf 2.tar -C a/ #将2.tar解压到a目录tar xvf data.tar #解压data.tar到当前目录
复制代码


压缩.tar.gz 包:


tar zcvf 压缩文件名 要压缩的文件tar zcvf tm.tar.gz tm #将当前目录下的tm目录压缩为tm.tar.gz
复制代码


解压.tar.gz 包:


tar zxvf 压缩文件名tar zxvf tm.tar.gz #将tm.tar.gz解压到当前目录gzip命令,将文件压缩为.gz包(可以用来压缩.tar文件)gzip 要压缩的文件 gzip 2.txt #将2.txt压缩为2.txt.gzgzip data.tar #将data.tar压缩为data.tar.gz
复制代码


source 命令


source 文件路径 #让配置文件修改结果立即生效,(还可以在 shell 脚本中引用其他的 shell 脚本)


/etc/profile #linux上的系统环境变量配置文件source /etc/profile #将系统环境变量生效
复制代码


export 命令


export 导入全局变量(环境变量) export 变量名=变量值export 变量名 变量的赋值:变量名=变量值
复制代码


<<EOF


<<EOF … EOF:将<<EOF 和 EOF 之间的多行内容传给前面的命令,

其中 EOF 可以是任意字符串,但约定都使用 EOF


[root@bow ~]# cat <<EOF> HELLO> WORD> JOB> SMITH> EOFHELLOWORDJOBSMITH
复制代码


<<EOF 是 shell 脚本中使用 sqlplus 的基础


[root@bow ~]# cat <<A> 11234> 1234> 1234> 1253> 1253> A112341234123412531253
复制代码


注意:EOF 必须顶行写


[root@bow ~]# cat <<EOF> ASDF> EOF> ASDFASDF> EOFASDF EOFASDFASDF
复制代码


cut 命令


cut 截取命令


-f 参数,指定列-d 参数指定列和列之间的分隔符,默认的分隔符是\t(行向制表符)cut -f 1 1.txt #取1.txt文件中的第1列内容(列分隔符默认为\t)cut -f 2 1.txt #取1.txt文件中的第2列内容cut -f 1 -d ',' 3.txt #取3.txt文件中的第1列(列分隔符为,)cut -f 2 -d ',' 3.txt #取3.txt第2列
复制代码


wc -l linux 常用命令.txt | cut -f 1 -d ’ ’ #取文件 linux 常用命令.txt 的行数(分隔符是空格)


[root@bow ~]# cut -f 1 -d ',' <<EOF> A,B,C> D,E,F> EOFAD
复制代码


printf 命令


%ns  输出字符串,n是数字,指代输出几个字符%ni  输出整数。n是数字,指代输出几个数字%m.nf  位数和小数位数。例如:%8.2f 代表输出8位数,其中2位是小数,6位是整数
复制代码


printf 格式字符串 内容


[root@bow ~]# printf '%s,%s,%s\n' abc def ghj klj klo qer #一行单词第三个打印成一行,单词和单词之间用逗号隔开abc,def,ghjklj,klo,qer[root@bow ~]# printf '%s %s\n' $(cat 4.txt) #将文件4.txt中的一行内容中的单词划分为两个一组打印 cat 合作查看文件内容 $(cat 4.txt)表示取cat命令的执行结果empno enamejob salcomm depno5.txt内容A B C D EF G H[root@bow ~]# printf '%s,%s\n' $(cat 5.txt)A,BC,DE,FG,H[root@bow ~]# printf '%5.2f\n' 12.1 #%5.2f表示输出一个小数,数的长度是5,其中有两个小数12.10[root@bow ~]# printf '%5.2f\n' 121234.116134 #如果输出的值最大长度超出5,那么整数部分不变量,小数部分会按照四舍五入的方法保存两位121234.12[root@bow ~]# printf '%i\n' 1234.5678  #%i只取数字的整数部分-bash: printf: 1234.5678: 无效数字1234
复制代码


awk 命令


awk 命令字符串 要处理的内容


[root@bow ~]# awk '{printf $1 "\n"}' 1.txt #printf 打印 $n 表示取第几列 $1表示取第1列 Hellosmithtomcat
复制代码


awk ‘{print $2}’ 1.txt #取 1.txt 的第 2 列,print 和 printf 功能相同是打印,比 printf 多一个换行功能


[root@bow ~]# awk '{printf $1 ","}' 1.txtHello,smith,tomcat,[root@bow ~]#[root@bow ~]# awk '{printf $1}' 1.txtHellosmithtomcat[root@bow ~]# awk '{printf $1 "\v"}' 1.txtHello     smith          tomcat[root@bow ~]# awk '{printf $1 ","}' 1.txtHello,smith,tomcat,
复制代码


sed 命令


sed 参数 命令 要处理的内容


-n  一般sed命令会把所有数据都输出到屏幕。如果加入此选择,则只会把经过sed命令处理的行输出到屏幕。-e  允许对输入数据应用多条sed命令编辑-i  用sed的修改结果直接修改读取的数据的文件,而不是修改屏幕输出[root@bow ~]# sed '2p' 1.txt #查询第2行Hello worldsmith 18smith 18tomcat etl[root@bow ~]# sed -n '2p' 1.txtsmith 18[root@bow ~]# sed -i 's/18/20/g' 1.txt 使用sed命令修改1.txt内容,将1.txt中18替换为20[root@bow ~]# cat 1.txtHello worldsmith 20tomcat etla\  追加,在当前行后添加一行或多行。添加多行时除最后一行外,每行末尾需要用"\"代表数据未完结。d  删除,删除指定的p  打印,输出指定的行[root@bow ~]# sed -i '2a !' 1.txt #在第2行后面追加一行 ![root@bow ~]# cat 1.txtHello worldsmith 20!tomcat etl[root@bow ~]# sed -i '3d' 1.txt #删除文件的第3行内容[root@bow ~]# cat 1.txtHello worldsmith 20tomcat etl[root@bow ~]# vim 6.txt[root@bow ~]# cat 6.txtabcd/home/bowif ad -e /home/bowabcd/home/bowif ad -e /home/bowabcd/home/bowif ad -e /home/bow#将6.txt文件中的/home/bow修改为/user/bw#注意:替换时,的符号是根据/来判断 s/原字符串/目标字符串/g 如果原字符串或新的字符串中有/时,需要使用\来转义# 错误写法:s//home/bow//user/bw/g 正确写法 s/\/home\/bow/\/user\/bw/g[root@bow ~]# sed -i 's/\/home\/bow/\/user\/bw/g' 6.txt[root@bow ~]# cat 6.txtabcd/user/bwif ad -e /user/bwabcd/user/bwif ad -e /user/bwabcd/user/bwif ad -e /user/bw
复制代码


注意:linux 中字符串的下标是从 0 开始的


service 命令


service 服务命令


ervice 服务名 [命令]命令:enable|disable|start|stop|restart|statusstart:启动服务stop:关闭服务restart:重启服务status:查看服务状态service network start #遍历网络service network stop #关闭网络service network restart #重启网络service network status #查看网络状态service iptables start #centos6及6以下版本,启动防火墙的命令service iptables stop #centos6及6以下版本,关闭防火墙(注意,关闭防火墙,只是临时关闭,下次重启之后防火墙依然会启动)service iptables restart #重启防火墙service mysqld start #启动mysql数据库service mysqld restart #启动mysql数据库service mysqld stop #关闭mysql数据库
复制代码


chkconfig 命令


chkconfig 命令检查,设置系统的各种服务


chkconfig 服务名 on|off #on表示打开服务 off表示关闭服务 通过chkconfig设置的服务是永久生效centos6及以下版本永久关闭或打开防火墙chkconfig iptables on #打开防火墙chkconfig iptables off #永久地关闭防火墙
复制代码


防火墙:


centos7 以上:


systemctl start firewalld #启动防火墙systemctl stop firewalld #关闭防火墙(临时关闭)systemctl status firewalld #查看防火墙状态systemctl disable firewalld #永久关闭防火墙systemctl enable firewalld #打开防火墙(不是启动防火墙)通过firewall-cmd来配置防火墙
复制代码


centos6 及以下:


防火墙配置文件:/etc/iptables,这个文件可以详细的配置防火墙,如果没有/etc/iptables 文件可以使用 iptables save 可以生成该文件


iptables 命令配置防火墙


service iptables start #centos6及6以下版本,启动防火墙的命令     service iptables stop #centos6及6以下版本,关闭防火墙(注意,关闭防火墙,只是临时关闭,下次重启之后防火墙依然会启动)     service iptables restart #重启防火墙
复制代码


环境变量配置文件


/etc/profile 是 linux 系统上配置系统环境变量的一个文件(针对所有用户的配置)

用户根目录下的.bash_profile:是用户环境变量的配置(针对当前用户有效)


su - 用户名 #切换用户时,会加载用户根目录下的.bash_profile环境变量配置文件su 用户名 #不会加载.bash_profile
复制代码


网络配置文件


网卡配置文件目录:/etc/sysconfig/network-scripts


网卡配置文件名都是以 ifcfg-开头,其中 ifcfg-lo 是本地网卡,是不需要配置的


vim /etc/sysconfig/network-scripts/ifcfg-enp0s3#网卡类型TYPE="Ethernet"#协议 dhcp表示:ip地址是自动分配的,static表示静态ip(手动配置ip地址),none表示没有协议(也是需要手动配置ip地址)BOOTPROTO="dhcp"DEFROUTE="yes"#网卡名称NAME="enp0s3"UUID="deed3fd2-bd67-459b-8a49-ef0dd6e575a2"DEVICE="enp0s3"#配置网卡是否随机启动,yes:表示随机启动,no:表示需要手动启动ONBOOT="yes"#配置静态ip,BOOTPROTO必须是static或none#ip地址配置IPADDR=192.168.1.106#配置子网掩码NETMASTER=255.255.255.0#配置网关GATEWAY=192.168.1.1#配置dns:域名解析服务器可以配置多个DNS1=192.168.1.1DNS2=192.168.5.1
复制代码


修改完网卡文件之后,重启网络即可


sudo 命令


sudo 命令,它在非 root 用户下,去调用一些 root 用户的命令,或者修改一些文件

sudo 命令是需要配置的,sudo 的配置文件是/etc/sudoers


#给bow用户配置sudo权限[root@bow ~]# vim /etc/sudoers#### Allow root to run any commands anywhere root ALL=(ALL) ALL#给bow用户设置sudo命令权限bow ALL=(ALL) ALL
复制代码


sudo 命令的使用:


sudo 命令


[root@bow ~]# su - bow上一次登录:四 3月 26 07:30:53 CST 2020pts/0 上[bow@bow ~]$ sudo vim /etc/profile
复制代码


ping 命令


ping 命令查看网络连通性的命令和 windows 上的功能一样


ping ip(0.0.0.100)
复制代码


ifconfig 命令


ifconfig 命令属于 net-tools 软件包,使用前需要安装 net-tools


net-tools 的安装:


yum -y install net-toolsifconfig查看ip地址
复制代码


netstat 命令


netstat 命令也属于 net-tools 软件包


netstat -tulp | grep 1521 #查看oracle监听器程序是否正常启动
复制代码


rpm 命令


rpm 是 linux 上的安装命令,用来安装.rpm 格式的安装包


rpm -ivh .rpm文件的路径 #表示安装软件包 rpm -qa #查看已安装的软件 rpm -qa | grep mysql #查看已经安装的mysql软件包 rpm -e --nodeps 安装包名 #卸载软件包 -e表示卸载 --nodeps表示不理会的依赖关系
复制代码


本文分享自华为云社区《linux 常用命令大全》,原文作者:HW-QGS 。


点击关注,第一时间了解华为云新鲜技术~


发布于: 2021 年 01 月 15 日阅读数: 103
用户头像

提供全面深入的云计算技术干货 2020.07.14 加入

华为云开发者社区,提供全面深入的云计算前景分析、丰富的技术干货、程序样例,分享华为云前沿资讯动态,方便开发者快速成长与发展,欢迎提问、互动,多方位了解云计算! 传送门:https://bbs.huaweicloud.com/

评论

发布
暂无评论
来不及解释!Linux常用命令大全,先收藏再说