linux常用命令

本文详细介绍了Linux系统中的一些基本命令,包括目录切换、文件管理(创建、删除、复制、移动)、文件权限控制、用户和用户组管理,以及文件压缩和解压缩。此外,还提到了服务器命令如Apache的启动和停止,以及简单的Web环境搭建,包括静态和动态网页的发布。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.目录切换

cd(change directory)切换目录。

  • cd /:回到根目录

  • cd ..:回到上一级目录

  • cd ~:回到家目录,Root用户登录下回到/root文件夹.普通用户,回到/home文件夹。

  • cd回车:同上,回到家目录。

  • cd - :意思是返回到上次的目录,类似windows返回 ;

  • cd 文件路径

绝对路径:完整路径,从/根目录开始。

相对路径:相对于当前路径的不完整路径,可以省略前面的当前路径。

当前路径+相对路径=绝对路径(完整路径)

2.ls命令

  • pwd:查看当前所处的路径

  • cmd --help/man cmd:查看命令的帮助手册

  • ls:查看当前路径下所有的文件

  • ls -l:列表形式显示文件夹,等于ll。

  • ls -a:全部的文件,包含显示隐藏文件夹/文件

3.文件文件夹(目录)管理

3.1 mkdir创建文件夹(目录)

mkdir(make directory)

mkdir a b c d # 当前路径下并列建了abcd 4个空文件夹

mkdir -p a/b/c/d # 当前路径下层级建了abcd 4个空文件夹

-p:建立目录时建立其所有不存在的父目录。

-m

3.2 rmdir删除文件夹(目录)

rmdir a b c d # 当前路径下并列删除abcd 4个空文件夹

rmdir -p a/b/c/d # 当前路径下层级删除abcd 4个空文件夹

3.3 删除文件/文件夹

rm(remove)删除文件或目录。

#删除整个a文件夹包括下面的子文件或者子文件夹

rm -rf a

-f或--force:强制删除文件或目录。

-r或-R或--recursive:递归处理,将指定目录下的所有文件及子目录一并处理。

# 删除yum.log文件

rm a/b/c/d/yum.log

3.4 cp(copy)复制

# 拷贝整个a文件夹以及文件夹下的子文件到/home

cp -r a /home

-r或-R或--recursive:递归处理,将指定目录下的所有文件及子目录一并处理。

# 拷贝/tmp/yum.log到/tmp/a/b/c文件夹

cp /tmp/yum.log /tmp/a/b/c

3.5 mv(move)剪切

可以用来重命名

mv /tmp/a/b/c/yum.log /tmp/a

mv /tmp/a /home

3.6 touch创建文件

touch file.txt新建一个file.txt的空文件(touch a/b/c/d/file.txt)

3.7 vi编辑器

vi 已存在文件:打开这个已存在文件

vi 不存在的文件:新建一个文件并打开

按下字母i:进入编辑模式,vi编辑器左下角是--INSERT--

输入我们需要写的内容

按下ESC:退出编辑模式,vi编辑器左下角INSERT消失

输入指令:

wq:w保存,q离开。

q!:不保存离开。

按下回车,退出vi编辑器

3.8 cat命令

cat(英文全拼:concatenate)命令用于连接文件并打印到标准输出设备上。

cat 参数 fileName

参数:

-n 或 --number:由 1 开始对所有输出的行数编号。

-b 或 --number-nonblank:和 -n 相似,只不过对于空白行不编号。

-s 或 --squeeze-blank:当遇到有连续两行以上的空白行,就代换为一行的空白行。

-E 或 --show-ends : 在每行结束处显示 $。

# 把 textfile1 的文档内容加上行号后输入 textfile2 这个文档里:
cat -n textfile1 > textfile2
# 把 textfile1 和 textfile2 的文档内容加上行号(空白行不加)之后将内容附加到 textfile3 文档里:
cat -b textfile1 textfile2 >> textfile3
# 清空 /etc/test.txt 文档内容:
cat /dev/null > /etc/test.txt

3.9文件查看

3.9.1 more往下翻页显示文档内容

more filename

按ENTER增加显示一行

ctrl+z终止命令,回到命令行

3.9.2 less分页显示文档内容

less /etc/httpd/conf/httpd.conf

往下翻页按PageDown,往上翻页按PageUp

3.9.3 head显示文档头几行内容

head /etc/httpd/conf/httpd.conf(不带数字默认显示头10行)

head -n /etc/httpd/conf/httpd.conf(带数字显示头n行,n为任意数字)

3.9.4 tail显示文档末几行内容

tail /etc/httpd/conf/httpd.conf(不带数字默认显示末10行)

tail -n /etc/httpd/conf/httpd.conf(带数字显示末n行,n为任意数字)

3.10 文件权限管理

3.10.1文件属性说明
3.10.2 更该文件属性
3.10.2.1chgrp更改文件属组

chgrp [-R] 属组名 文件名

-R:递归更改文件属组,就是在更改某个目录文件的属组时,如果加上-R的参数,那么该目录下的所有文件的属组都会更改。

3.10.2.2 chown更改文件属主/属组

chown [–R] 属主名 文件名

chown [-R] 属主名:属组名 文件名

3.10.2.3 chmod更改文件权限

chmod [-R] abc 文件或目录

参数说明

-R : 进行递归(recursive)的持续变更,以及连同次目录下的所有文件都会变更

a:代表文件拥有者(owner)的权限,数值0~7

b:代表文件拥有者同组用户(group )的权限,数值0~7

c:代表其它用户(others)的权限,数值0~7

权限数字说明:

r:读权限,数值为4

w:写权限,数值为2

x:执行权限,数值为1

3.11文件压缩/解压缩

3.11.1 gzip

gzip 命令只能用来压缩文件,不能压缩目录,即便指定了目录,也只能压缩目录内的所有文件。

gzip [选项] 源文件

-c:将压缩数据输出到标准输出中,并保留源文件。

-d:对压缩文件进行解压缩。

-r:递归压缩指定目录下以及子目录下的所有文件。

-v:对于每个压缩和解压缩的文件,显示相应的文件名和压缩比。

-l:对每一个压缩文件,显示字段:压缩文件的大小、未压缩文件的大小、压缩比、未压缩文件的名称。

-数字:用于指定压缩等级,-1 压缩等级最低,压缩比最差;-9 压缩比最高。默认压缩比是 -6

# gzip文件压缩test.sh-》test.sh.gz  
gzip test.sh 
# gzip文件解压缩test.sh.gz-》test.sh  
gzip -d test.sh.gz
-d或--decompress或----uncompress:解开压缩文件。
3.11.2 zip/unzip

#压缩文件,要压缩的文件文件名是最后一个参数

zip filename.zip filename

# 压缩文件夹,-r:层级压缩。

zip -r filename.zip filedir

# 解压缩,-d:指定解压缩目录,不指定解压至当前文件夹。

unzip filename.zip -d filedir

3.11 tar文件备份/还原

tar -cvf [包名,*.tar结尾] [文件,多个用空格隔开]

-c或--create 建立新的备份文件,文件后缀为*.bar。

-v或--verbose 显示指令执行过程。

-f<备份文件>或--file=<备份文件> 指定备份文件。

-z备份同时压缩文件,文件后缀为*.bar.gz。

-x文件还原,一般不与c共用。

# 文件备份
tar -cvf bak.tar dir file2.txt file.txt test.sh
#文件还原
tar -xvf bak.tar
# 文件备份后用gzip压缩
tar -zcvf bak.tar.gz dir file2.txt file.txt test.sh
#压缩备份文件还原。先解压,再还原。
gzip -d bak.tar.gz 
tar -xvf bak.tar

4.用户管理

4.1 useradd建立用户帐号

useradd 选项 用户名

参数说明:

  • -c comment 指定一段注释性描述。

  • -d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。

  • -g 用户组 指定用户所属的用户组。

  • -G 用户组,用户组 指定用户所属的附加组。

  • -s Shell文件 指定用户的登录Shell。

  • -u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。

# 新建了一个用户gem,该用户的登录Shell是 /bin/sh。
# 它属于group用户组,同时又属于adm和root用户组,其中group用户组是其主组。
useradd -s /bin/sh -g group –G adm,root gem

增加用户账号就是在/etc/passwd文件中为新用户增加一条记录,同时更新其他系统文件如/etc/shadow, /etc/group等

4.2 userdel用户删除

userdel 选项 用户名

参数

-r:作用是把用户的主目录一起删除

4.3 修改用户

usermod 选项 用户名

参数:

与useradd相同

4.4 用户口令的管理

用户管理的一项重要内容是用户口令的管理。用户账号刚创建时没有口令,但是被系统锁定,无法使用,必须为其指定口令后才可以使用,即使是指定空口令

passwd 选项 用户名

默认用户名修改当前用户口令。

参数说明:

  • -l 锁定口令,即禁用账号。

  • -u 口令解锁。

  • -d 使账号无口令。

  • -f 强迫用户下次登录时修改口令。

4.5 su(super user)切换登录用户

su username

5.用户组管理

5.1 groupadd创建用户组

groupadd 选项 用户组

参数说明:

  • -g GID 指定新用户组的组标识号(GID)。

  • -o 一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。

5.2 groupdel删除用户组

groupdel 用户组

5.3 groupmod修改用户组

groupmod 选项 用户组

参数:

  • -g GID 为用户组指定新的组标识号。

  • -o 与-g选项同时使用,用户组的新GID可以与系统已有用户组的GID相同。

  • -n新用户组 将用户组的名字改为新名字

#此命令将组group2的标识号改为10000,组名修改为group3
groupmod –g 10000 -n group3 group2

5.4 切换用户组

如果一个用户同时属于多个用户组,那么用户可以在用户组之间切换,以便具有其他用户组的权限。

newgrp 用户组

5.5 groups显示当前用户所在的组

6.服务器命令

service httpd start启动apache(浏览器输入localhost)

service httpd stop停止apache

service httpd restart重启apache(apapche开启状态下)

service httpd status查看服务状态

7.系统管理

7.1 ps进程查看

ps(process status)报告程序状况

ps -ef查看所有进程

ps -ef|grep user1 查看关于user1的进程

7.2 kill杀死进程

kill -9 pid(进程标识符)

kill -9 pid1 pid2 pid3(同时杀死进程)

7.3 top动态的监控进程所占系统的资源

主要看哪个进程占用CPU,内存比较多

7.4 free查看内存使用状况

7.5 netstat查看网络状态

netstat -an查看正在被使用的端口号

7.6 reboot系统重启

一般不用。

7.7 shutdown 系统关机指令

shutdown -r now(立即重启)

shutdown -r 10(10分钟后自动重启,root用户使用)

shutdown -r 20:35(20:35重启)

shutdown -h now(立即关机)

shutdown -h 10

shutdown -h 20:35(20:35关机)

shutdown -h 20:35

shutdown -c取消shutdown(在文件中的打开上再次打开一个链接,输入shutdown -c)

8.磁盘管理

8.1 df 查看磁盘空间

df -h

-h:以可读性较高的方式来显示信息

8.2 du 显示目录或文件的大小

参数:

-b或-bytes 显示目录或文件大小时,以byte为单位。

-h或--human-readable 以K,M,G为单位,提高信息的可读性。

-k或--kilobytes 以1024 bytes为单位。

-m或--megabytes 以1MB为单位。

-s或--summarize 仅显示总计。

du -sm查看文件夹总的大小(M)
du -sk查看文件夹总的大小(k)
du -sh查看文件夹总的大小(灵活显示够m显示m)
du -h查看文件夹下每个文件夹的大小

FAQ

1.linux文件系统

Linux目录类似一个数,没有盘符的概念,**/**为根目录,下面有很多子目录:

  • /bin:存放二进制可执行文件,常用命令(ls,cat,mkdir等命令)一般都放在这里。

  • /etc:存放系统管理和配置文件。

  • /home:存放所有用户文件的根目录,是用户目录的基点。

  • /usr:存放系统的应用程序,比较重要的目录/usr/local本地系统管理员软件安装目录。

  • /opt:额外安装的可选应用程序包所放置的位置。一般情况下,我们可以把tomcat等都安装在这里。

  • /proc:虚拟文件系统目录,是系统内存的映射。可直接访问这个目录获取系统信息。

  • /root:系统管理员的主目录

  • /sbin:存放二进制可执行文件,只有root才能访问。这里存放的是系统管理员使用的系统级别的管理员命令和程序。如ifconfig等。

  • /dev:用于存放设备文件

  • /mnt:系统管理员安装临时文件系统的安装点,系统提供这个目录是让用户临时挂载其他的文件系统。

  • /boot:用于存放用于系统引导时使用的各种文件

  • /lib:存放跟文件系统中的程序运行所需要的动态链接库及内核模块

  • /tmp:用于存放各种临时文件。

  • /var:用于存放运行时需要改变数据的文件

  • /lost+found:这个目录平时是空的,系统非正常关机而留下的文件就在这里。

2.链接数据库

(1)先确保Linux链接到网络。

(2)在启动数据库。

service mysqld start启动数据库mysql

service mysqld status查看数据库状态

(3)链接数据库。

mysql -u(用户) root -p(密码) 连接数据库(mysql用户名root,密码是空)

(4)退出链接

ctrl+z退出到命令行

(5)数据库服务停止/重启

service mysqld stop

service mysqld restart

3.安装VMTool

1)虚拟机--安装VMtool(CD/DVD,C:\Program Files\VMware\VMware Workstation\linux.iso)

2)进入linux操作系统,打开/media,里面放了VMtool安装包

cd /media

cd VMware\ Tools

cp VMwareTools-9.6.2-1688356.tar.gz /tmp

cd /tmp

chmod 777 VMwareTools-9.6.2-1688356.tar.gz

tar -zxvf VMwareTools-9.6.2-1688356.tar.gz

chmod -R 777 vmware-tools-distrib

cd vmware-tools-distrib

./vmware-install.pl

一路回车,安装过程有点慢

reboot

1.实现文件共享,跟本机共享

虚拟机-设置,选项-共享文件夹,勾选“在下次关机或挂起前一直启用”

添加-主机路径,选择任意一个本机的文件夹,确定

/mnt/hgfs里面就是共享的本机文件夹内容

2.实现跟本机的复制,粘贴

4.环境搭建与网页的发布

4.1环境搭建

1.linux安装(WEB服务器apache,数据库服务器mysql,应用服务器php)

2.启动服务apache, mysql

3.发布网页,通过FTP将网页上传到服务器上/tmp,再发布到的服务器的一个文件夹。

4.2静态网页

以web.html为例

用FTP上传网页文件到服务器/tmp目录

cd /tmp

service httpd start

打开linux里面的浏览器,网址输入http://localhost/

cp web.html /var/www/html

cd /var/www/html

chmod 777 web.html

打开发布的网页,将localhost换成本机的IP地址

http://localhost/web.html

http://172.31.84.114/web.html

关机防火墙(可以让其他用户访问这台电脑),系统-管理-防火墙,点击“禁用”再点“应用”,点击“是”

4.3动态网页

以ranzhi为例

通过FTP将ranzhi网页上传到服务器的/tmp目录下

cd /tmp

chmod 777 ranzhi.3.3.zip

unzip ranzhi.3.3.zip

cp -r ranzhi /var/www/html

cd /var/www/html

chmod -R 777 ranzhi

浏览器打开http://172.31.84.114/ranzhi/www/

4.4PHP应用服务器安装

yum install(上网下载并安装)

yum remove(卸载)

yum install php php-cli php-pdo php-mysql

如果出现yum locked的解决办法

ps -ef|grep yum

kill -9

service httpd restart

重新打开http://172.31.84.114/ranzhi/www/

service mysqld start

http://172.31.84.114/ranzhi/www/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值