您的位置:首页 > 运维架构 > Linux

Linux常见命令使用

2017-11-19 21:17 225 查看
一,文件处理命令:

1.1 ls 查看当前目录下的文件或者目录

1.2 ls -a

显示所有文件,包括隐藏文件

1.3 ls -lh 以k显示文件大小

1.4 ls -i 查看文件的i节点

1.5 mkdir 目录名字 (可以同时创建多个目录,以空格隔开)

1.6 mkdir -p 递归创建,同时创建2个或2个以上目录

1.7 pwd 打印当前所在目录的绝对目录

1.8 rmdir( remove empty dir,删除空的目录,不是空的不能删除)

1.9 cp 源文件目录 目标目录 (复制文件)

2.0 cp -r 源目录 目标目录( 复制目录)

2.1 cp -p 保留文件属性

2.2 mv 源目录 目标目录 (移动或重命名文件名)

2.3 rm 文件名 删除文件

2.4 rm -f 文件名 强制删除文件,不会有提示

2.5 rm -rf 删除一个目录

2.6 touch 文件名 创建文件(以空格隔开创建多个)

2.7 touch “”使用引号即使你使用了空格隔开也不会创建多个文件

2.8 cat 文件名 查看文件内容

2.9 cat -n 查看文件内容并添加行号

3.0 tac 文件名 倒序查看文件

3.1 more 文件名 查看比较多的文件 空格或者f翻页 按enter一行一行 q退出

3.2 less 文件名 pagerup 一页一页往上翻 向上箭头 一行一行向上翻 搜索功能:/* 按住n向下寻找

3.3 head -n 行号 文件名 不使用-n指定,默认显示前10行

3.4 tail -n 行号 文件名 查看文件的末尾几行,不使用-n指定,默认显示前10行

3.5 tail -f 动态显示文件

3.6 ln -s 源文件 目标文件.soft 软链接

3.7 ln 源文件 目标文件.hard 硬链接

注意:硬链接不能跨分区 ,不允许指向目录,通过i节点识别

3.8

chmod ugoa +-= rwx 421 ex:chmod u=rw chmod u-w,g+rw

chmod -R 递归修改

file r:cat/more/head/tail/less

w:vim

x:script command

directory r:ls

w:touch/mkdir/rmdir/rm

x:cd

3.9 注意:删除文件不是要看文件的权限,要看文件所在的目录的权限是否有w权限,有表示可以删除该目录下没有w权限的文件或者文件夹

4.0 chown 用户 文件名 改变文件的所有者 只有root和所有者更改所有者

4.1 chgrp 组名 文件名 改变文件的所处组 只有Root可以更改所处组

4.2 umask -S 查看默认创建文件和目录的权限

umask 002 777-022=755 rwxr-xr-x

u=rwx,g=rx,o=rx 默认创建文件夹的权限,默认创建文件的权限相对于少了x,对于安全考虑

umask … 更改默认创建文件和文件夹的权限

4.3 find 尽量少用,特别是服务器访问高峰期,耗费资源

find 搜索路径 -name 搜索文件名 * 匹配任意字符 ? 匹配单个字符

4.4 find 搜索路径 -iname 搜索文件名 iname不区分大小写

4.5 find 搜索路径 -size +204800(-n小于100M +n大于100M n 等于100M)1个数据块 512字节 0.5k

4.6 find 搜索路径 -user wangtao (-group)找出所处组和所有者中所有文件

4.7 find 搜索路径 -cmin -5 (-cmin change 文件属性被改变 immin modify 文件内容被改变 amin 访问时间)

4.8 find 搜索路径 -size +163840 -a -size -204800 在/etc下查找文件大小小于80MB小于100MB的文件

4.9 find 搜索路径 -size +163840 -o -size -204800 两个条件满足一个即可

5.0 find 搜索路径 -name 搜索文件名 -exec/-ok ls -l {} \; (-ok会询问你是否要确认)

5.1 -type f文件 d目录 l软连接文件

5.2 find .inum 31531 -exec rm {} \;(.表示当前目录 inum通过i节点查找)

5.3 locate 通过资料库查找,效率比find快

对于刚新创建的文件资料库并没有记录,所以先使用 updatedb 更新资料库(tmp目录下的除外)

5.4 locate -i 文件名 -i表示不区分大小写

5.5 which 寻找一个命令的绝对路径 which cp

5.6 whereis 寻找一个命令的绝对路径,并且会找出该命令的帮助文档的绝对路径

5.7 grep 寻找文件中的内容位置 grep multiuser /etc/inittab

5.8 grep -i 不区分大小写查找文件内容

5.9 grep -v ^# /etc/inittab 显示文件中不以#号开头的内容,^表示开头

二,帮助命令

6.0 man ls 查看ls的命令详情 /-l 查看指定选项

6.1 man services 查看配置文件的帮助信息,不需要使用绝对路径

6.2 man 5 passwd 表示查看配置文件的帮助信息 1表示命令的帮助信息

6.3 whatis ls 得到ls简短的命令帮助信息,不会提供选项

6.4 apropos inittab 得到配置文件的简短信息

6.5 touch –help 获取 touch命令的选项的详细信息

6.6 info -ls和man作用一样

6.7 shell内置命令 查找不到绝对路径的命令 cd umask等 使用 man cd 是查不到帮助信息的

help umask 查看shell内置命令的帮助信息

三,用户管理命令:

6.8 useradd .. 在/home下增加一个用户 此时还没有给该用户设置密码

6.9 passwd 用户名 只有root用户可以不遵守密码原则,普通用户修改密码必须遵守密码原则

7.0 who 查看当前系统登陆的用户情况 tty表示本地登录 pts远程登陆

7.1 w 跟who命令作用一样,多了一些信息,

例如:up表示linux运行了多少时间,IDLE表示空闲多久,JCPU表示累加使用CPU的时间,PCPU表示当前命令使用CPU多少时间,WAHT表示使用了什么命令

uptime linux运行了多少时间

7.2 groupadd .. 增加组

四,压缩解压命令:

.gz 只能压缩文件,并且不会留下源文件

gzip 文件名 压缩

gzip -d 文件名 /gunzip 文件名 解压缩

压缩目录

1.打包 tar -cvf 目录名.tar 目录 v表示显示该目录中的文件或者目录

2.压缩 gzip 目录名.tar

3.打包压缩一起:tar zcf 目录.tar.gz 目录名

解压缩: tar zxvf 压缩包

.zip 保留源文件

zip 文件名.zip 文件

zip -r 目录名.zip 目录

unzip 文件名.zip或者

bzip2 -k 文件名 压缩文件

bunzip2 -k 文件名.bz2 -k 保留压缩包

tar -cjf 目录名.tar.bz2 目录名 录录录录录录录录录录

缩目录

tar -xjf 目录名.tar.bz2 解压目录

.bz2 -k 保留源文件

bzip2 -k 文件名 压缩文件

bunzip2 -k 文件名.bz2 -k 保留压缩包

tar -cjf 目录名.tar.bz2 目录名 压缩目录

tar -xjf 目录名.tar.bz2 解压目录

网络命令:

write Ctrl+回退键/delete 删除 Ctrl+D 退出 必须用户在线

wall(write all) 给所有在线用户发送消息

ping IP ping -c 3 IP

ifconfig 查看IP

ifconfig eth0 IP 修改eth0的网络IP

mail 用户名 发送Emial 不需要用户在线

mail 查看邮件 help 查看有哪些功能 1 表示查看第一封邮件详细内容 h查看有哪些邮件 d 1删除第一封邮件 q退出 ….

last 显示系统登陆重启的用户详细信息

lastlog 查看所有用户的登陆信息

lastlog -u 502 查看该用户的最后登录时间

traceroute www.baidu.com 显示数据包到主机间的路径

netstat -t TCP协议 -u UDP协议 -l 监听 -r 路由 -n 显示IP地址和端口号 显示网路相关信息

netstat -tlun 查看本地监听的端口

netstat -an 查看本机所有的网络连接

netstat -rn 查看本机路由表

setup 配置网络

mount -t iso9660 /dev/sr0 /mnt/cdrom

umount/dev/sr0

关机重启命令:

shutdown -h now -c 取消前一个关机命令 -h 关机 -r 重启

halt / poweroff / init 0

重启:

reboot / init 6

init 0 关机 1 单用户 2 不完全多用户,不含NFS服务 3 完全多用户 4 未分配 5 图形界面 6 重启

cat /etc/inittab 修改系统默认运行级别

X 图像环境

runlevel 查询系统运行级别

logout 退出登录

Vim常用操作:

进入插入模式:a 在光标所在字符后插入,A 在光标所在行尾插入,

i 在光标所在字符前插入,I 在光标所在行行首插入

o 在光标下插入新行,O在光标上插入新航

:set nu 设置行号 :set nonu 取消行号

gg 到第一行 G 到最后一行

nG 到第n行 ;n到第n行 ¥移至行尾 0移至行首

x 删除光标所在处字符

nx 删除光标所在处后n个字符

dd 删除光标所在行,ndd删除n行

dG 删除光标所在行到文件末尾内容

D 删除光标所在处到行尾内容

:nl,n2d 删除指定范围的行

yy 复制当前行

nyy 复制当前行以下n行

dd 剪切当前行

ndd 剪切当前行以下n行

p/P 粘贴在当前光标所在行下或上

r 取代光标所在字符

R 从光标所在处开始替换字符,按Esc结束

u 取消上一步操作

/string 搜索指定字符串 按n查找下一个 :set ic 搜索时忽略大小写

:%s/old/new/g 全文替换指定字符串

:n1,n2s/old/new/g 在一定范围内替换指定字符串

:w 保存修改

:w new_filename 另存为指定文件

:wq 保存修改并退出

ZZ 保存修改并退出

:q! 不保存退出

:wq! 保存修改并退出(文件所有者及root可使用)

vim小技巧:

:r 文件名 将文件名内容导入到当前编辑文件的光标处

:!which ls 查看命令的绝对路径

:r !date 将命令的执行结果导入到当前编辑文件的光标处

:map Ctrl+v+p I# 设置快捷键

:map Ctrl+v+b 0x

连续行注释:

:n1,n2s/^/#/g 在n1-n2行的行首添加# ^表示行首

:n1,n2s/^#//g 在n1-n2行的行首删#

:n1,n2s/^/\/\//g 在n1-n2行的行首添加//

替换:

:ab mymail 1262135886@qq.com

root/.vimrc vim编辑快捷键永久生效

RPM包命名原则

httpd-2.2.15-15.el6.centos.1.i686.rpm

httpd 软件包名

2.2.15 软件版本

15 软件发布次数

e16.centos 适合的linux平台

i686 适合的硬件平台

rpm rpm包扩展名

www.rpmfind.net

包全名:操作的包是没有安装的软件包时,使用包全名,而且要注意路径

包名:操作已经安装的软件包时,使用包名。是搜索/var/lib/rpm/中的数据库

rpm -ivh 包全名 v verbose 显示详细信息 h hash 显示进度 –nodeps 不检测依赖性

rpm -Uvh 包全名 -U upgrade 升级

rpm -e 包名 -e erase

查询

rpm -q 包名

rpm -qa a all 查询系统所有已经安装的rpm包

rpm -qi 包名 i info 查询安装过的包名信息 -p package 查询未安装包信息

rpm -ql 包名 -l list 查询包名安装路径

rpm -qf 系统文件名 -f file 查询系统文件属于哪个软件包

rpm -qR 包名 查询包名的依赖性

RPM包校验

rpm -V 包名

验证内容中的8个信息的具体内容如下:

S 文件大小是否改变

M 文件的类型或文件的权限(rwx)是否被改变

5 文件MD5校验和是否改变(可以看成文件内容是否改变)

D 设备的中,从代码是否改变

L 文件路径是否改变

U 文件的属主(所有者)是否改变

G 文件的属组是否改变

T 文件的修改时间是否改变

文件类型:

c 配置文件(config file)

d 普通文件(documentation)

g “鬼”文件(ghost file),很少见,就是该文件不应该被这个RPM包包含

l 授权文件(license file)

r read me(描述文件)

RPM包中文件提取

rpm2cpio 包全名 |\ >cpio -idv .

rpm2cpio 将rpm包转换为cpio格式的命令

cpio 是一个标准工具,它用于创建软件档案文件和从档案文件中提取文件

yum在线管理

修改永久ip

setup

vi /etc/sysconfig/network-scripts/ifcfg-eth0 ONBOOT=no 改成yes

service network restart 重启网络服务

网络yum源

vi /etc/yum.repos.d/CentOS-Base.repo

[base] 容器名称,一定要放在[]中

name 容器说明,可以自己随便写

mirrorlist 镜像站点,这个可以注释掉

baseurl 我们的yum源服务器地址,默认是CentOS官方的yum源服务器,是可以使用的,如果你觉得慢可以改成你喜欢的yum源地址

enabled 此容器是否生效,如果不写或写成enable=1都是生效,写成enable=0就是不生效

gpgcheck 如果是1是指RPM的数字证书生效,如果是0则不生效

gpgkey 数字证书的公钥文件文件保存位置,不用修改

yum命令:

yum list 查询所有可用软件包列表

yum search 关键字

yum -y install 包名 安装

yum -y updata 包名 升级

yum -y remove 包名 卸载

yum grouplist 列出所有可用的软件组列表

yum groupinstall 软件组名 如果有软件组名有空格用“”

yum groupremove 软件组名 卸载指定软件组

光盘yum源搭建:

1。挂载光盘

mount /dev/sr0 /mnt/cdrom/

2.让网络yum源文件失效

cd /etc/yum.repos.d/ mv CentOS-Base.repo CentOS-Base.repo.bak ….让其他三个yum源失效

3.修改光盘yum源文件

vim CentOS-Media.repo

[c6-media]

name=CentOS-$releasever-Media

baseurl=file:///mnt/cdrom

地址为你自己的光盘挂载地址

file:///media/cdrom/

file:///media/cdrecorder/

gpgchecck=1

enabled=1

gpgkey=file:///etc/pki/rpm/-gpg/RPM-GPG-KEY-CentOS-6

源码包和RPM包的区别

RPM 安装的是默认位置 而源码包安装的是指定位置,所以RPM包在管理服务时可以用service启动,而源码包只能使用绝对路径

/etc/ 配置文件安装目录

/usr/bin/ 可执行的命令安装目录

/usr/lib/ 程序所使用的函数库保存位置

/usr/share/doc/ 基本的软件使用手册保存位置

/usr/share/man/ 帮助文件保存位置

/etc/rc.d/init.d 服务的安装位置
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: