乐趣区

关于linux:来不及解释Linux常用命令大全先收藏再说

摘要: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)-h
ll 命令: 它和 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/"? y
rm:是否进入目录 "a/b"? y
rm:是否进入目录 "a/b/c"? y
rm:是否删除一般空文件 "a/b/c/3.txt"?y
rm:是否删除目录 "a/b/c"?y
rm:是否删除一般空文件 "a/b/2.txt"?y
rm:是否删除目录 "a/b"?y
rm:是否删除一般空文件 "a/1.txt"?y
rm:是否删除目录 "a/"?y
rm -rf a/ #强制删除当前目录下 a 目录及 a 目录下的所有内容
 
rm -rf * #删除当前目录下的所有内容
rm -rf a/* #删除当前目录下 a 目录下的所有内容
rm -rf *.txt #删除当前目录下的所有 txt 文件
rm -rf *s* #删除当前目录下所有名字中蕴含 s 的文件或文件夹

echo 命令

echo #输入命令,能够输出变量,字符串的值

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

和 >> 命令


和 >>: 输入符号,将内容输入到文件中,> 示意笼罩(会删除原文件内容) >> 示意追加

echo Hello World > 1.txt #将 Hello World 输入到当前目录下的 1.txt 文件
 #如果当前目录下没有 1.txt 文件会创立一个新文件,#如果当前目录下有 1.txt,则会删除原文件内容,写入 Hello World
echo 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.com
CTRL+ 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.txt
cp -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.txt
mv tmp tmp #将 tmp 目录改名为 tm
mv 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 用户, 并指定它的主用户组是 bows
id 用户名 #查看用户的 id
id 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 常用命令.txt
d                 rwx              r-x             r-x                . 4 root 
root  81 3 月 24 08:06 data
d 示意文件夹    u 示意用户权限   g 示意用户组权限   o 示意其余用户权限
 
r: 示意读权限 数字示意为 4
w: 示意写权限 数字示意为 2
x: 示意执行权限 数字示意为 1
-: 示意没有权限

chmod 赋权限命令

chmod 权限 文件门路
-rw-r--r--. 1 root root   31 3 月  24 07:46 2.txt
chmod u+x 2.txt #给用户加上执行权限
-rwxr--r--. 1 root root   31 3 月  24 07:46 2.txt
chmod g+w 2.txt #给用户组加写权限
-rwxrw-r--. 1 root root   31 3 月  24 07:46 2.txt
chmod o+x 2.txt #给其余用户加执行权限
-rwxrw-r-x. 1 root root   31 3 月  24 07:46 2.txt
chmod 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.txt
chmod 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 data
chmod -R 777 data #将 data 目录以及它上面的所有文件的权限设置为 rwxrwxrwx
drwxrwxrwx. 4 root root 81 3 月 24 08:06 data

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

chown -R 用户[: 用户组] 目录或文件
-rwxrw-rw-. 1 root root 31 3 月 24 07:46 2.txt
chown bow 2.txt #将 2.txt 的所属用户改为 bow
-rwxrw-rw-. 1 bow root 31 3 月 24 07:46 2.txt
chown bow:bows 2.txt #将 2.txt 所属的用户改为 bow, 用户组改为 bows
-rwxrw-rw-. 1 bow bows 31 3 月 24 07:46 2.txt
drwxr--r--. 4 root root 81 3 月 24 08:06 data
chown -R bow:bows data #将 data 目录及它子目录文件的所属用户改为 bow, 用户组改为 bows
drwxr--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.gz
gzip 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
> EOF
HELLO
WORD
JOB
SMITH

<<EOF 是 shell 脚本中应用 sqlplus 的根底

[root@bow ~]# cat <<A
> 11234
> 1234
> 1234
> 1253
> 1253
> A
11234
1234
1234
1253
1253

留神:EOF 必须顶行写

[root@bow ~]# cat <<EOF
> ASDF
> EOF
> ASDFASDF
> EOF
ASDF
 EOF
ASDFASDF

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
> EOF
A
D

printf 命令

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

printf 格局字符串 内容

[root@bow ~]# printf '%s,%s,%sn' abc def ghj klj klo qer #一行单词第三个打印成一行, 单词和单词之间用逗号隔开
abc,def,ghj
klj,klo,qer
[root@bow ~]# printf '%s %sn' $(cat 4.txt) #将文件 4.txt 中的一行内容中的单词划分为两个一组打印 cat 单干查看文件内容 $(cat 4.txt)示意取 cat 命令的执行后果
empno ename
job sal
comm depno
5.txt 内容
A B C D E
F G H
[root@bow ~]# printf '%s,%sn' $(cat 5.txt)
A,B
C,D
E,F
G,H
[root@bow ~]# printf '%5.2fn' 12.1 #%5.2f 示意输入一个小数, 数的长度是 5, 其中有两个小数
12.10
[root@bow ~]# printf '%5.2fn' 121234.116134 #如果输入的值最大长度超出 5, 那么整数局部不变量, 小数局部会依照四舍五入的办法保留两位
121234.12
[root@bow ~]# printf '%in' 1234.5678  #%i 只取数字的整数局部
-bash: printf: 1234.5678: 有效数字
1234

awk 命令

awk 命令字符串 要解决的内容

[root@bow ~]# awk '{printf $1"n"}' 1.txt #printf 打印 $n 示意取第几列 $1 示意取第 1 列 
Hello
smith
tomcat

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

[root@bow ~]# awk '{printf $1","}' 1.txt
Hello,smith,tomcat,[root@bow ~]#
[root@bow ~]# awk '{printf $1}' 1.txt
Hellosmithtomcat
[root@bow ~]# awk '{printf $1"v"}' 1.txt
Hello
     smith
          tomcat
[root@bow ~]# awk '{printf $1","}' 1.txt
Hello,smith,tomcat,

sed 命令

sed 参数 命令 要解决的内容

-n  个别 sed 命令会把所有数据都输入到屏幕。如果退出此抉择,则只会把通过 sed 命令解决的行输入到屏幕。-e  容许对输出数据利用多条 sed 命令编辑
-i  用 sed 的批改后果间接批改读取的数据的文件,而不是批改屏幕输入
[root@bow ~]# sed '2p' 1.txt #查问第 2 行
Hello world
smith 18
smith 18
tomcat etl
[root@bow ~]# sed -n '2p' 1.txt
smith 18
[root@bow ~]# sed -i 's/18/20/g' 1.txt 应用 sed 命令批改 1.txt 内容, 将 1.txt 中 18 替换为 20
[root@bow ~]# cat 1.txt
Hello world
smith 20
tomcat etl
a  追加,在以后行后增加一行或多行。增加多行时除最初一行外,每行开端须要用 "" 代表数据未完结。d  删除,删除指定的
p  打印,输入指定的行
[root@bow ~]# sed -i '2a !' 1.txt #在第 2 行前面追加一行 !
[root@bow ~]# cat 1.txt
Hello world
smith 20
!
tomcat etl
[root@bow ~]# sed -i '3d' 1.txt #删除文件的第 3 行内容
[root@bow ~]# cat 1.txt
Hello world
smith 20
tomcat etl
[root@bow ~]# vim 6.txt
[root@bow ~]# cat 6.txt
abcd/home/bow
if ad
 -e /home/bow
abcd/home/bow
if ad
 -e /home/bow
abcd/home/bow
if 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.txt
abcd/user/bw
if ad
 -e /user/bw
abcd/user/bw
if ad
 -e /user/bw
abcd/user/bw
if ad
 -e /user/bw

留神:linux 中字符串的下标是从 0 开始的

service 命令

service 服务命令

ervice 服务名 [命令]
命令:enable|disable|start|stop|restart|status
start: 启动服务
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.1
DNS2=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-tools
ifconfig 查看 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。

点击关注,第一工夫理解华为云陈腐技术~

退出移动版