原创 linux(Centos)常用必学的基本命令手册大全

linux centos
IT技术 · 继续停留 · 更新于 2018-11-02


文件和目录操作

cd    进入到某个文件目录下

示例:cd / 进入根目录; cd ../ 回到上一级目录; cd 进入个人的主目录等

ls   显示本路径下的文件

示例:ls -l 显示详细的文件资料; ls -a 显示隐藏的文件等;ls -lh显示文件权限

mkdir    创建一个目录

示例:mkdir fy 创建一个名为fy的目录;mkdir fy ld 创建两个目录;

find    文件查找

-atime n:搜索在过去n天读取过的文件。
-ctime n:搜索在过去n天修改过的文件。
-group grpoupname:搜索所有组为grpoupname的文件。  

 -name:指定名字,find / -name 1.txt
 -type:指定类型,(b/c/d/p/l)
 -size:指定大小,单位K/M/G,+表示大于,-表示小于,find / -size +1G
 -perm:指定权限
 -user:指定用户
 -group:指定组

示例:find / -mtime n 在根目录下查找n天之内有改动的文件,0则为今天;find / -name fy 根目录下查找文件名为fy的文件

find / -user fy 搜索属于用户 'fy' 的文件和目录;find / -name \*.png 在根目录下搜索带有'.png' 结尾的文件 

cp    复制

示例:cp fy ld dir将fy和ld复制到dir目录下也可只复制一个文件;cp file1 file2 复制一个文件 

mv    移动(命令用来为文件或目录改名,或者将文件由一个目录移入另一个目录中)  

-f 强制覆盖;-u目标文件已经存在,且比目标文件新,才会更新; -i若目标文件已经存在,就会询问是否覆盖  

示例: mv file1 file2 file3 dir 把文件file1、file2、file3移动到目录dir中;mv file1 file2 # 把文件file1重命名为file2;

rm    删除命令 -i 询问是否删除 -rf 强制删除

示例:rm -rf 文件路径或者文件名 强制删除

whereis    搜索某个文件的位置

示例:whereis php 搜索php文件的位置

which    指令会在环境变量$PATH设置的目录里查找符合条件的文件 即可执行文件的位置 

cat    查看文件的内容   

示例:cat file1 从第一个字节开始正向查看文件的内容;more file1 查看一个长文件的内容

vim    编辑文件内容 

示例:vim fy 编辑fy文件内容,按i键进入编辑,按esc退出 后 可以 :wq 进行保存, :q 不保存,按/name 查找name字符的内容,按n查找下一个。

grep    它能使用正则表达式搜索文本,并把匹配的行打印出来

示例:grep root /etc/passwd 在 /etc/passwd文件中查找包含root的行 查找的是文件 而不是目录

touch ./test.js //在当前目录下创建一个名为 test.js 的文件


环境变量

vim /etc/profile 修改环境变量   

source /etc/profile  修改完立即生效 


用户和群组  

用户设置    

su - : 切换到指定用户,若不加'-',只会切换目录及用户身份,不会切换执行环境。若不指定用户。默认切换到root用户

whoami:查看当前用户  

who 当前用户在线情况

useradd  fy 创建一个fy的用户

useradd -c "Name Surname " -g root -d /home/fy -s /bin/bash fy 创建一个属于 "root" 用户组的用户fy   

passwd fy 修改一个fy用户的口令 (只允许root执行)

passwd 修改当前用户口令  

userdel -r fy 删除一个fy用户 ( '-r' 排除主目录)  

passwd -l fy 禁止fy用户登入

/etc/shadow和/etc/passwd系统存在的所有用户名  使用 cat  /etc/passwd 可以进入查看 用户信息

usermod [-cdegGlsuLU] username | 修改用户的相关属性 使用 cat  /etc/passwd 可以进入查看 用户属性信息

    -c 后面接账号的说明,即 /etc/passwd 第五栏的说明栏,可以加入一些账号的说明。

    -d 后面接账号的家目录,即修改 /etc/passwd 的第六栏;  

    -e 后面接日期,格式是 YYYY-MM-DD 也就是在 /etc/shadow 内的第八个字段数据啦!  

    -f 后面接天数为 /etc/shadow 的第七字段。  

    -g 后面接初始群组,修改 /etc/passwd 的第四个字段,亦即是GID的字段!

    -G 后面接次要群组,修改这个使用者能够支持的群组

    -l 后面接账号名称。即是修改账号名称, /etc/passwd 的第一栏!

    -s 后面接 Shell 的实际档案,例如 /bin/bash 或 /bin/csh 等等。

    -u 后面接 UID 数字啦!即 /etc/passwd 第三栏的资料;

    -L 冻结密码

    -U 解冻密码 


群组设置    

groupadd fy 创建一个新用户组fy

groupdel  fy   删除一个用户组fy

groupmod -n newfy fy 重命名一个用户组fy为newfy

涉及文件:

  1. /etc/passwd:存放用户信息
  2. /etc/group:存放用户组信息
  3. /etc/shadow:存放用户密码


文件的权限

chmod   设置文件权限;读+4;写+2;执行+1

示例:chmod -R 777 fy 给fy这个文件目录以及这个文件目录下的所有文件最高权限,第一个数字代表文件所属用户的权限;第二个数字代表所属群组的权限;第三个代表其他人的权限

chown    设置文件所属用户和组

chown fy file 改变一个文件file的所有人为fy

chown -R  fy  file   改变一个目录的所有人属性并同时改变改目录下所有文件的属性   

chown fy:ftgroup file 改变一个文件的所有人为fy和群组为fygroup

chgrp fygroup file 改变文件file的群组属于fygroup


网络

wget [参数] [URL地址] | 直接从网络上下载文件 

telnet [参数] [主机] | 用于远程登录,采用明文传送报文,安全性不好 

ping [参数] [主机名或IP地址] | 测试与目标主机的连通性 示例:ping www.baidu.com 按ctrl+c 进行退出

ifconfig [网络设备] [参数] | 查看和配置网络设备


端口与进程

查看端口占用

netstat -tunlp|grep 端口号或者进程名称

netstat -anp 列出所有端口占用  

kill pid  输入pid结束某个进程或者端口

killall nginx  杀死同名nginx进程

pkill 和killall 应用方法差不多,也是直接杀死运行中的程式 

 

打包和压缩文件  

以下文件名都为fy

tar -cvfz php.tar.gz dir 创建一个gzip格式的压缩包 目录为dir

tar -zxvf  php.tar.gz 解压一个gzip格式的压缩包 

zip fy.zip fy 创建一个zip格式的压缩包 

zip -r  fy.zip  fy   fy2  dir 将几个文件和目录同时压缩成一个zip格式的压缩包 

unzip  fy.zip 解压一个zip格式压缩包    

bunzip2  fy.bz2 解压一个叫做 ' fy.bz2'的文件

bzip2 fy 压缩一个叫做 'fy' 的文件 

gunzip  fy.gz 解压一个叫做 ' fy.gz'的文件 

gzip  fy   压缩一个叫做 ' fy  '的文件 

gzip -9  fy   最大程度压缩 

rar a fy.rar dir 创建一个叫做 'fy .rar' 的包 

rar a fy.rar fy fy2 dir 同时压缩 'fy', 'fy2' 以及目录 'dir' 

rar x fy.rar 解压rar包 

unrar x fy.rar 解压rar包 

tar -cvf fy.tar fy 创建一个非压缩的 tarball 

tar -cvf fy.tar fy fy2 dir 创建一个包含了 'fy', 'fy2' 以及 'dir'的档案文件 

tar -tf fy.tar 显示一个包中的内容 

tar -xvf fy.tar 释放一个包 

tar -xvf fy.tar -C /tmp 将压缩包释放到 /tmp目录下 

tar -cvfj fy.tar.bz2 dir 创建一个bzip2格式的压缩包 

tar -jxvf fy.tar.bz2 解压一个bzip2格式的压缩包 

 

系统和内存

top命令提供了运行中系统的动态实时视图 ,按q退出 

free -h 以M大小的内存方式显示内存信息

清空内存 需要执行先保存命令 sync 再执行清空命令 echo 3 > /proc/sys/vm/drop_caches

内存列表参数意思

total——总物理内存
used——已使用内存,一般情况这个值会比较大,因为这个值包括了cache+应用程序使用的内存
free——完全未被使用的内存
shared——应用程序共享内存
buffers——缓存,主要用于目录方面
cached——缓存,用于已打开的文件

系统的关机、重启以及登出 

shutdown -h now 关闭系统

shutdown -h hours:minutes 预定时间关闭系统 hours:minutes 小时:分钟

shutdown -c 取消按预定时间关闭系统 

shutdown -r now 重启

reboot 重启第二种方式

logout 注销   

exit 退出当前shell  


系统信息 

arch 显示机器的处理器架构

uname -r 显示正在使用的内核版本 

dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI) 

hdparm -i /dev/hda 罗列一个磁盘的架构特性 

hdparm -tT /dev/sda 在磁盘上执行测试性读取操作 

cat /proc/cpuinfo 显示CPU info的信息 

cat /proc/interrupts 显示中断 

cat /proc/meminfo 校验内存使用 

cat /proc/swaps 显示哪些swap被使用 

cat /proc/version 显示内核的版本 

cat /proc/net/dev 显示网络适配器及统计 

cat /proc/mounts 显示已加载的文件系统 

lspci -tv 罗列 PCI 设备 

lsusb -tv 显示 USB 设备 

date 显示系统日期 

cal 2018 显示2018年的日历表 

date 041217002007.00 设置日期和时间 - 月日时分年.秒 

clock -w 将时间修改保存到 BIOS   


YUM 软件包 

yum clean all 删除所有缓存的包和头文件   

yum clean headers 删除所有头文件  

yum clean packages 清理rpm缓存删除下载的包  

yum search package_name 在rpm仓库中搜寻软件包   

yum list 列出当前系统中安装的所有包   

yum remove package_name 删除一个rpm包   

yum update package_name 更新一个rpm包   

yum install package_name 下载并安装一个rpm包  

yum localinstall package_name.rpm 将安装一个rpm包,使用你自己的软件仓库为你解决所有依赖关系 

yum update package_name.rpm 更新当前系统中所有安装的rpm包 


RMP包

rpm -ivh package.rpm 安装一个rpm包 
rpm -ivh --nodeeps package.rpm 安装一个rpm包而忽略依赖关系警告 
rpm -U package.rpm 更新一个rpm包但不改变其配置文件 
rpm -F package.rpm 更新一个确定已经安装的rpm包 
rpm -e package_name.rpm 删除一个rpm包 
rpm -qa 显示系统中所有已经安装的rpm包 
rpm -qa | grep httpd 显示所有名称中包含 "httpd" 字样的rpm包 
rpm -qi package_name 获取一个已安装包的特殊信息 
rpm -qg "System Environment/Daemons" 显示一个组件的rpm包 
rpm -ql package_name 显示一个已经安装的rpm包提供的文件列表 
rpm -qc package_name 显示一个已经安装的rpm包提供的配置文件列表 
rpm -q package_name --whatrequires 显示与一个rpm包存在依赖关系的列表 
rpm -q package_name --whatprovides 显示一个rpm包所占的体积 
rpm -q package_name --scripts 显示在安装/删除期间所执行的脚本l 
rpm -q package_name --changelog 显示一个rpm包的修改历史 
rpm -qf /etc/httpd/conf/httpd.conf 确认所给的文件由哪个rpm包所提供 
rpm -qp package.rpm -l 显示由一个尚未安装的rpm包提供的文件列表 
rpm --import /media/cdrom/RPM-GPG-KEY 导入公钥数字证书 
rpm --checksig package.rpm 确认一个rpm包的完整性 
rpm -qa gpg-pubkey 确认已安装的所有rpm包的完整性 
rpm -V package_name 检查文件尺寸、 许可、类型、所有者、群组、MD5检查以及最后修改时间 
rpm -Va 检查系统中所有已安装的rpm包- 小心使用 
rpm -Vp package.rpm 确认一个rpm包还未安装 
rpm2cpio package.rpm | cpio --extract --make-directories *bin* 从一个rpm包运行可执行文件 
rpm -ivh /usr/src/redhat/RPMS/`arch`/package.rpm 从一个rpm源码安装一个构建好的包 
rpmbuild --rebuild package_name.src.rpm 从一个rpm源码构建一个 rpm 包 

目录结构:
linux目录与win完全不同,是从'/'开始的,只有他没有上一级目录,因此也叫根目录
详细介绍:
/bin:大部分的系统命令
/boot:启动相关目录
/dev:设备文件目录,linux下一切设备皆文件
/etc:配置文件目录
/home:普通用户的家目录,一个用户对应一个文件夹
/lib:库文件
/lib64:64位库文件
/lost+found:系统异常时临时保存数据,用于恢复等操作
/media:媒体目录
/mnt:挂载目录,通用挂载点
/opt:安装系统非必须软件目录
/proc:虚拟文件系统,会映射硬件信息
/root:root用户的家目录
/sbin:超级用户才能执行的命令目录
/selinux:linux一套安全机制,非常复杂,通常不用
/srv:存放本机或本机服务器的数据或服务
/sys:类似于/proc,也是虚拟文件系统,可以映射系统信息
/tmp:临时文件,可能随时销毁
/usr:存放用户安装的应用程序
/var:系统产生的不可自动销毁的文件,如:日志、缓存等


|1 收藏|0

思考你要发的内容