Linux常用命令

在这里插入图片描述

童话里说,每逢雨后都会有一道彩虹。哈喽,大家好,在我们的日常测试工作中,难免会接触或使用到Linux操作系统,下面我整理了一些测试工作中的Linux中常用到的命令,希望能给大家带来一定的帮助。

一、目录操作命令

目录切换:cd

命令:cd 目录

cd /        切换到根目录
cd /usr     切换到根目录下的usr目录
cd ../      切换到上一级目录 或者  cd ..
cd ~        切换到home目录
cd -        切换到上次访问的目录

目录查看:ls

命令:ls [-al]

ls               查看当前目录下的所有目录和文件
ls -a            查看当前目录下的所有目录和文件(包括隐藏的文件)
ls -l 或 ll      列表查看当前目录下的所有目录和文件(列表查看,显示更多信息)
ls /dir          查看指定目录下的所有目录和文件   如:ls /usr

创建目录:mkdir

命令:mkdir 目录

mkdir aaa         在当前目录下创建一个名为aaa的目录
mkdir /usr/aaa    在指定目录下创建一个名为aaa的目录

删除目录或文件:rm

命令:rm [-rf] 目录

删除文件:

rm 文件       删除当前目录下的文件
rm -f 文件    删除当前目录的的文件(不询问)

删除目录:

rm -r aaa    递归删除当前目录下的aaa目录
rm -rf aaa    递归删除当前目录下的aaa目录(不询问)

全部删除:

rm -rf *    将当前目录下的所有目录和文件全部删除

目录修改:mv、cp

1、重命名目录

命令:mv 当前目录 新目录

mv aaa bbb    将目录aaa改为bbb

注意:mv的语法不仅可以对目录进行重命名而且也可以对各种文件,压缩包等进行 重命名的操作

2、剪切目录

命令:mv 目录名称 目录的新位置

mv /usr/tmp/aaa /usr  将/usr/tmp目录下的aaa目录剪切到 /usr目录下面  

注意:mv语法不仅可以对目录进行剪切操作,对文件和压缩包等都可执行剪切操作

3、拷贝目录

命令:cp -r 目录名称 目录拷贝的目标位置 -r代表递归

cp -r /usr/tmp/aaa  /usr  将/usr/tmp目录下的aaa目录复制到 /usr目录下面  

注意:cp命令不仅可以拷贝目录还可以拷贝文件,压缩包等,拷贝文件和压缩包时不 用写-r递归

搜索目录:find

命令:find 目录 参数 文件名称

find /usr/tmp -name 'a*'    查找/usr/tmp目录下的所有以a开头的目录或文件
find /usr/tmp -name 'a*' -type f    查找/usr/tmp目录下的所有以a开头的文件
find /usr/tmp -name 'a*' -type d    查找/usr/tmp目录下的所有以a开头的目录

二、文件操作命令

新建文件:touch

命令:touch 文件名

touch  aa.txt   在当前目录创建一个名为aa.txt的文件

删除文件:rm

命令:rm -rf 文件名

rm -rf  aa.txt   强制删除当前目录下的aa.txt文件

修改文件:vi或vim

vi编辑器的3种模式:

基本上vi可以分为三种状态,分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下:

命令行模式command mode)

控制屏幕光标的移动,字符、字或行的删除,查找,移动复制某区段及进入Insert mode下,或者到 last line mode。

命令行模式下的常用命令:

【1】控制光标移动:↑,↓,j

【2】删除当前行:dd

【3】查找:/字符

【4】进入编辑模式:i o a

【5】进入底行模式::

编辑模式(Insert mode)

只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。
编辑模式下常用命令:

【1】ESC 退出编辑模式到命令行模式;

底行模式(last line mode)

将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号……等。
底行模式下常用命令:

【1】退出编辑: :q

【2】强制退出: :q!

【3】保存并退出: :wq

打开文件

命令:vi 文件名

vi aa.txt 或者 vim aa.txt  打开当前目录下的aa.txt文件

注意:使用vi编辑器打开文件后,并不能编辑,因为此时处于命令模式,点击键盘i/a/o进入编辑模式。

编辑文件

使用vi编辑器打开文件后点击按键:i ,a或者o即可进入编辑模式。

i:在光标所在字符前开始插入

a:在光标所在字符后开始插入

o:在光标所在行的下面另起一新行插入

保存或者取消编辑

保存文件:

第一步:"ESC"进入命令行模式

第二步:":"进入底行模式

第三步:"wq"保存并退出编辑

取消编辑:

第一步:"ESC"进入命令行模式

第二步:":"进入底行模式

第三步:"q!"撤销本次修改并退出编辑

文件的查看

文件的查看命令:cat、more、less、tail

cat:看最后一屏

示例:使用cat查看/etc/sudo.conf文件,只能显示最后一屏内容

cat sudo.conf
more:百分比显示

示例:使用more查看/etc/sudo.conf文件,可以显示百分比,回车可以向下一行,空格可以向下一页,q可以退出查看

more sudo.conf
less:翻页查看

示例:使用less查看/etc/sudo.conf文件,可以使用键盘上的PgUp和PgDn向上 和向下翻页,q结束查看

less sudo.conf
tail:指定行数或者动态查看

示例:使用tail -10 查看/etc/sudo.conf文件的后10行,Ctrl+C结束

tail -10 sudo.conf

权限修改

rwx:r代表可读用数字4表示,w代表可写用数字2表示,x代表该文件是一个可执行文件用数字1表示,如果rwx任意位置变为-则代表不可读或不可写或不可执行文件。

示例:给aaa.txt文件权限改为可执行文件权限,aaa.txt文件的权限是-rw-------

第一位:-就代表是文件,d代表是文件夹

第一段(3位):代表拥有者的权限

第二段(3位):代表拥有者所在的组,组员的权限

第三段(最后3位):代表的是其他用户的权限

   421  421  421

-  rw-   ---     ---

修改文件或者目录权限使用chmod命令:

u:用户

g:组

o:其它用户

a:所有用户(默认)

+:增加权限

-:删除权限

=:重新分配权限

r:读

w:写

x:执行

chmod u+x file      给file的属主增加执行权限
chmod 751 file      给file的属主分配读、写、执行(7)的权限,给file的所在组分配读、执行(5)的权限,给其他用户分配执行(1)的权限
chmod u=rwx,g=rx,o=x file      上例的另一种形式
chmod =r file               为所有用户分配读权限
chmod 444 file              为所有用户分配读权限
chmod a-wx,a+r file       为所有用户分配读权限
chmod -R u+r directory        递归地给directory目录下所有文件和子目录的属主分配读的权限
chmod 4755                    设置用ID,给属主分配读、写和执行权限,给组和其他用户分配读、执行的权限。

三、打包和压缩

Windows的压缩文件的扩展名 .zip、.rar
linux中的打包文件:aa.tar
linux中的压缩文件:bb.gz
linux中打包并压缩的文件:.tar.gz

Linux中的打包文件一般是以.tar结尾的,压缩的命令一般是以.gz结尾的。
而一般情况下打包和压缩是一起进行的,打包并压缩后的文件的后缀名一般.tar.gz。

命令:tar -zcvf 打包压缩后的文件名 要打包的文件

其中:

z:调用gzip压缩命令进行压缩

c:打包文件

v:显示运行过程

f:指定文件名

示例:打包并压缩/usr/tmp 下的所有文件 压缩后的压缩包指定名称为xxx.tar

tar -zcvf ab.tar aa.txt bb.txt
或:
tar -zcvf ab.tar  *

解压

命令:tar [-zxvf] 压缩文件
其中:x:代表解压

示例:将ab.tar解压到当前目录下

tar -zxvf ab.tar

将ab.tar解压到根目录/usr下

tar -xvf ab.tar -C /usr   -C代表指定解压的位置

四、查找

grep

grep命令是一种强大的文本搜索工具

使用实例:

ps -ef | grep sshd                    查找指定ssh服务进程 
ps -ef | grep sshd | grep -v grep     查找指定服务进程,排除gerp身 
ps -ef | grep sshd -c                 查找指定进程个数

find

find命令在目录结构中搜索文件,并对搜索结果执行指定的操作。

find 默认搜索当前目录及其子目录,并且不过滤任何结果(也就是返回所有文件),将它们全都显示在屏幕上。

使用实例:

find . -name "*.log" -ls    在当前目录查找以.log结尾的文件,并显示详细信息。 
find /root/ -perm 600       查找/root/目录下权限为600的文件 
find . -type f -name "*.log"  查找当目录,以.log结尾的普通文件 
find . -type d | sort       查找当前所有目录并排序 
find . -size +100M          查找当前目录大于100M的文件

whereis

whereis命令是定位可执行文件、源代码文件、帮助文件在文件系统中的位置。这些文件的属性应属于原始代码,二进制文件,或是帮助文件。

使用实例:

whereis ls    将和ls文件相关的文件都查找出来

which

which命令的作用是在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。

使用实例:

which pwd  查找pwd命令所在路径 
which java  查找path中java的路径

五、su、sudo

su

su用于用户之间的切换。但是切换前的用户依然保持登录状态。如果是root 向普通或虚拟用户切换不需要密码,反之普通用户切换到其它任何用户都需要密码验证。

su test     切换到test用户,但是路径还是/root目录
su - test   切换到test用户,路径变成了/home/test
su          切换到root用户,但是路径还是原来的路径
su -        切换到root用户,并且路径是/root

su不足:如果某个用户需要使用root权限、则必须要把root密码告诉此用户。

退出返回之前的用户:exit

sudo

sudo是为所有想使用root权限的普通用户设计的。可以让普通用户具有临时使用root权限的权利。只需输入自己账户的密码即可。

进入sudo配置文件命令:

vi /etc/sudoer 或 visudo
案例:
允许hadoop用户以root身份执行各种应用命令,需要输入hadoop用户的密码。
hadoop  ALL=(ALL)   ALL 
 
案例:
只允许hadoop用户以root身份执行ls 、cat命令,并且执行时候免输入密码。 
配置文件中: 
hadoop  ALL=NOPASSWD:  /bin/ls, /bin/cat

用法示例:

sudo vim aaa.txt

六、软件管理

RPM安装

用法: rpm [选项…]

-a:查询所有套件;
-b<完成阶段><套件档>+或-t <完成阶段><套件档>+:设置包装套件的完成阶段,并指定套件档的文件名称;
-c:只列出组态配置文件,本参数需配合"-l"参数使用;
-d:只列出文本文件,本参数需配合"-l"参数使用;
-e<套件档>或--erase<套件档>:删除指定的套件;
-f<文件>+:查询拥有指定文件的套件;
-h或--hash:套件安装时列出标记;
-i:显示套件的相关信息;
-i<套件档>或--install<套件档>:安装指定的套件档;
-l:显示套件的文件列表;
-p<套件档>+:查询指定的RPM套件档;
-q:使用询问模式,当遇到任何问题时,rpm指令会先询问用户;
-R:显示套件的关联性信息;
-s:显示文件状态,本参数需配合"-l"参数使用;
-U<套件档>或--upgrade<套件档>:升级指定的套件档;
-v:显示指令执行过程;
-vv:详细显示指令执行过程,便于排错。

安装软件:

rpm -ivh xxx.rpm               # 直接安装
rpm --force -ivh xxx.rpm       # 忽略报错,强制安装

卸载软件:

rpm -e tree         # 卸载软件

列出所有安装的软件包:

rpm -qa

获取某个软件包的文件全名:

rpm -q tree

获取rpm包中的文件安装的位置:

rpm -ql tree

Yum安装

yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器。基於RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令

yum的命令形式一般是如下:yum [options] [command] [package …]

其中的[options]是可选的,选项包括-h(帮助),-y(当安装过程提示选择全部为"yes"),-q(不显示安装的过程)等等。[command]为所要进行的操作,[package …]是操作的对象。

安装yum包:

yum install PACKAGE_NAME

删除yum包:

yum remove PACKAGE_NAME

重新安装一个yum包:

yum reinstall PACKAGE_NAME

搜索yum包:

yum search PACKAGE_NAME

显示yum包的信息:

yum info PACKAGE_NAME

清除yum缓存:

yum clean all

更新安装的yum包:

yum update

更新具体的yum包:

yum update PACKAGE_NAME

显示yum历史:

yum history

显示已启用的yum存储库的列表:

yum repolist
Yum软件仓库的配置

进入到Yum仓库软件仓库的配置文件目录: /etc/yum.repos.d

cd /etc/yum.repos.d

使用Vim编辑器创建一个名为rhel.repo的配置文件(文件名可随意,但必须为.repo结尾)

vim rhel.repo

按a/i/o进入输入模式,输入内容如下:

[rhel]
name=rhel
baseurl=http://www.****.com/*****  or  file:///media/cdrom
enabled=1
gpgcheck=0

按esc退出至命令模式,输入:wq,保存并退出。

name=rhel:Yum仓库名称描述

baseurl=file:///media/cdrom:提供的方式FTP、HTTP、本地

enabled=1:设置此源是否可用;1可用,0禁用

gpgcheck=1:设置此源是否校检文件;1为,0不为

使用"yum install httpd"检查Yum仓库是否已经可用,输入命令,使用Yum软件仓库来安装Web服务

yum install httpd

出现 Complete! 配置正确

源码安装

下载并解压文件

如果下的压缩文件的后缀是

tar.gz 解压用 tar -xzvf xxx.tar.gz

tar.b2 解压用 tar -xjvf xxx.tar.b2

tar 解压用 tar -xvf xxx.tar

配置安装路径

在/usr/local/下创建放置将要安装的软件目录

mkdir /usr/local/newApp

cd 到源代码所在的文件夹,配置安装路径

/usr/local/newApp
./configure --prefix=/usr/local/newApp

(./configure --prefix=/usr/local/指定安装根目录 .–with指的是安装本文件所依赖的库文件。/configure是源代码安装的第一步,主要的作用是对即将安装的软件进行配置,检查当前的环境是否满足要安装软件的依赖关系,生成makefile文件)

编译源代码
make

如果是多核cpu可以用 make -j来加快编译速度

make -j
安装
make install

这个过程可能需要root权限

删除源代码以节省磁盘空间
rm -rf xxx.tar.gz

编译源代码和安装可以组合成

make&&make install

也可以把所有步骤用一组合命令来执行


./configure --prefix=/usr/local/newApp && make && make install
配置环境变量
针对所有用户

修改 /etc/profile 文件,如果计算机仅仅作为开发使用时推存使用这种方法,因为所有用户的shell都有权使用这个环境变量,可能会给系统带来安全性问题。这里是针对所有的用户的所有的shell

vi /etc/profile

在/etc/profile的最下面添加:

export  PATH="$PATH:/NEW_PATH"
针对单一用户

修改.bashrc文件,这种方法更加安全,可以把使用这些环境变量的权限控制到用户级别,这里是针对某一特定的用户,如果需要给某个用户权限使用这些环境变量,只需要修改其个人用户主目录下的 .bashrc文件就可以了。

vi ~/.bashrc

在下面添加:

Export  PATH="$PATH:/NEW_PATH"

七、系统资源

services命令

service可以控制系统服务(打开、关闭、重启)

用法:service 【服务名称】 start/restart/stop/status

service iptables status  --查看iptables服务的状态
service iptables start  --开启iptables服务
service iptables stop  --停止iptables服务
service iptables restart  --重启iptables服务
service network restart ---重启网络服务
service network stop ---关闭网络服务

chkconfig命令

开启/关闭服务开机自启动

chkconfig iptables off  --关闭iptables服务的开机自启动
chkconfig iptables on  --开启iptables服务的开机自启动

增加环境变量

PATH=$PATH:/usr/bin/python

时钟相关

hwclock --hctosys ---硬件时钟与系统时钟同步
hwclock --systohc ---系统时钟和硬件时钟同步

CPU相关

cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c ---查看CPU信息(型号)
cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l ---查看物理CPU个数
cat /proc/cpuinfo| grep "cpu cores"| uniq ---查看每个物理CPU对应的核数
cat /proc/cpuinfo| grep "processor"| wc -l ---查看逻辑CPU个数(虚拟机)

内存相关

cat /proc/meminfo | grep MemTotal ---查看内存容量(单位:KB)

硬盘相关

df -hT ---查看磁盘容量的使用情况

系统相关

lsb_release -a  ---查看操作系统的信息

性能状况相关

top ---查看当前性能状况并实时刷新

Cpu(s)参数解释:
    us,user:用户空间占用CPU的百分比;
    sy,system: 内核空间占用CPU的百分比;
    ni,niced:改变过优先级的进程占用CPU的百分比;
    id,idle: 空闲CPU百分比;
    wa,IO wait: IO等待占用CPU的百分比;
    hi,Hardware IRQ:硬中断占用CPU的百分比;
    si,Software Interrupts: 软中断占用CPU的百分比;
    st,Steal Time:当hypervisor服务另一个虚拟处理器的时候,虚拟 CPU 等待实际 CPU 的时间的百分比;

Mem参数解释:
    total:物理内存总容量(单位:KB);
    used:使用中的内存总量(单位:KB);
    free:空闲内存总量(单位:KB);
    buffers:缓冲内存总量(单位:KB);
  • 25
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

寒秋丶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值