admin 管理员组

文章数量: 887021

Linux文件目录含义:

  • /:根目录,一般根目录下只存放目录,在Linux下有且只有一个根目录,所有东西都是从这里开始。
  • /bin、usr/bin:可执行二进制文件的目录。
  • /dev:存放Linux系统下的设备文件,访问该目录下某个文件,相当于访问某个设备。
  • /boot:放置Linux系统启动时用到的一些文件
  • /etc:系统配置文件存放的目录,不建议在此目录下存放可执行文件
  • /home:用户“家”目录
  • /lib、/usr/lib、/usr/local/lib:系统使用的函数库的目录,程序在执行过程中,需要调用一些额外的参数时需要函数库的协助。
  • /lost+found:系统发生异常错误时,会将一些遗失的片段放置于此。
  • /mnt、/media:光盘挂载点,一般光盘都挂载到/mnt/cdrom
  • /opt:给主机额外安装软件所摆放的目录。
  • /proc:此目录的数据都在内存中,如系统核心,外部设备,网络状态等
  • /root:系统管理员root的家目录
  • /sbin、/usr/sbin、/usr/local/sbin:放置系统管理员使用的可执行命令,与/bin不同的是,这几个目录是给系统管理员root使用的命令,一般用户只能“查看”而不能设置和使用。
  • /srv:服务启动之后需要访问的数据目录,如www服务需要访问的网页数据都放在/srv/www内。
  • /usr:应用程序存放目录
    • /usr/bin:存放应用程序
    • /usr/share:存放共享数据
    • /usr/lib:程序运行所需的一些函数库文件
    • /usr/local:存放软件升级包
    • /usr/share/doc:系统说明文件存放目录
    • /usr/share/man:程序说明文件存放目录
  • /var:放置系统执行过程中经常变化的文件
    • /var/log/message:所有的登录文件存放目录
    • /var/spool/mail:邮件存放的目录
    • /var/run:程序或服务启动后

 

ctrl+shift+加号:放大终端窗口的字体显示

ctrl+减号:缩小终端窗口的字体显示

ctrl+l(L的小写)/clear:清屏

tab键:自动补齐

 

Linux命令格式:

command [-options] [patameter]

  • command:命令名,相应功能的英文单词或单词的缩写
  • [-options]:选项,可用来对命令进行控制,也可以省略
  • parameter:传给命令的参数,可以是零个,一个或多个

 

help:显示command命令的帮助信息,格式为:command --help

man:显示command命令的帮助信息,格式为:man command

 

使用man时的操作键

  • 空格键:显示下一屏
  • enter:滚动一行
  • b:回滚一屏
  • f:前滚一屏
  • q:退出man命令
  • h:列出所有功能键
  • /word :搜索Word字符串

 

Linux常用命令

ls:查看文件信息,列出目录的内容

常用选项

选项

含义

-a

显示指定目录下所有子目录与文件,包括隐藏文件

-l

以列表方式显示文件的详细信息

-h

配合-l以人性化的方式显示文件大小

-i

列出文件的iNode编号,系统自动给每个文件的编号

列出的信息含义如下:

  • Linux文件或者目录名称最长可以有265个字符,“.”代表当前目录,“..”代表上一级目录。
  • 以“.”开头的文件为隐藏文件,需要使用-a参数才能显示。
  • 允许使用特殊字符来同时引用多个文件名,这些特殊字符被称为通配符

通配符

含义

*

文件,文件名中所有字符

te*

查找te开头的文件

*html

html结尾的文件

文件名中任意一个字符

?.c

指有三个字符,第一个字符任意,后缀为.c的文件

a.?

只有三个字符,前两个为a.,最后一个字符任意

[]

[”和“]”将字符组括起来,表示可以匹配字符组中的任意一个。“-”用于表示字符范围。

[abc]

a,b,c中任意一个

[a-z]

a-z中任意一个

[a-z]*

a-z中任意一个字符开头的

\

转义

 

touch:创建一个空文件

如果文件存在,就是修改文件时间

 

cd:切换工作目录

命令

含义

cd

切换到当前用户的主目录(/home/用户目录),用户登陆的时候,默认的目录就是用户的主目录。

cd ~

切换到当前用户的主目录(/home/用户目录)

cd .

切换到当前目录.

cd ..

切换到上级目录.

cd -

可进入上次所在的目录.

注意:如果路径是从根目录开始的,则路径的前面需要加“/”,如/etc

 

mkdir:创建目录

通过mkdir命令可以创建一个新的目录。参数-p可递归创建目录。需要注意的是新建目录的名称不能与当前目录中已有的

目录或文件同名,并且目录创建者必须对当前目录具有写权限。

 

rm删除文件或目录

选项

含义

-i

以交互式方式执行

-f

强制删除,忽略不存在的文件,无需提示

-r

递归删除,删除有文件的目录文件时必须加此参数

 

cp:拷贝文件或目录

将给出的文件或目录文件复制到另一个文件或目录文件中。

常用选项:

选项

含义

-a

该选项通常在复制目录时使用,它保留链接、文件属性,并递归地复制目录,简单而言,保持文件原有属性。

-f

已经存在的目标文件而不提示,直接覆盖

-i

交互式复制,在覆盖目标文件之前将给出提示要求用户确认.

-r

若给出的源文件是目录,则cp将递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名.

-v

显示拷贝进度

 

mv:移动、重命名

选项

含义

-f

禁止交互式操作,如有覆盖也不提示

-i

确认交互方式操作,如果mv操作将导致对已存在的目标文件的覆盖,系统会询问是否重写,要求用户回答以避免误覆盖文件.

-v

显示进度

-b

如果目录存在,先备份,再移动目录.

tree:显示指定目录的结构

 

>/>>:输出重定向

Linux允许将命令执行结果重定向到一个文件,本应显示在终端上的内容保存到指定文件中。

注意:

>输出重定向会覆盖原来的内容,文件不存在,则创建。

>>输出重定向则会追加到文件的尾部。文件不存在,则创建。

 

cat:查看或合并文件内容

参数

含义

-n

输出行号,从1开始

-b

输出行号,从1开始,空白行不编号

-s

当遇到连续连续两行以上空白行,换成一行显示

注意:通过配合重定向可合并多个文件内容到一个文件中

 

more:分屏查看文件内容

和cat功能类似,不过每次显示一页,避免滚屏,按空格显示下一页,按q退出显示,按下h获取帮助。

常用操作命令:

  • enter:向下n行,需要定义,默认1行
  • ctrl+F:向下滚动一屏
  • ctrl+B:返回上一屏
  • 空格键:向下滚动一屏
  • q:退出more

find:文件查找

通常用来在特定的目录下搜索符合条件的文件,也可以用来搜索特定用户属主的文件。

选项

含义

find ./ -name test.sh

查找当前目录下所有名为test.sh的文件.

find ./ -name '*.sh'

查找当前目录下所有后缀为.sh的文件.

find ./ -name "[A-Z]*"

查找当前目录下所有以大写字母开头的文件.

find /tmp -size 2M

查找在/tmp 目录下等于2M的文件.

find /tmp -size +2M

查找在/tmp 目录下大于2M的文件.

find /tmp -size -2M

查找在/tmp 目录下小于2M的文件.

find ./ -size +4k -size -5M

查找当前目录下大于4k,小于5M的文件.

find ./ -perm 777

查找当前目录下权限为 777 的文件或目录.并且会递归显示

 

grep:文本内容搜索

允许对文本文件进行模式查找。如果找到匹配模式,grep打印包含模式的所有行。

注意:grep命令输入字符串参数时,最好单引号或双引号括起来。

一般格式:grep [-选项] '搜索内容串' 文件名

 

常用选项:

选项

含义

-v

显示不包含匹配文本的所有行(相当于求反)

-n

显示匹配行及行号

-i

忽略大小写

注意:

grep搜索内容串可以是正则表达式。

 

ln:建立链接文件

  • 软链接:软链接不占用磁盘空间,源文件删除则软链接失效
  • 硬链接:只能链接普通文件,不能链接目录,源文件删除不影响硬链接。 源文件和链接文件占用相同大小的磁盘空间,硬连接无法链接目录文件。

注意:无论是软链接还是硬链接,文件都保持同步变化。

使用格式:

ln 源文件 链接文件------------硬

ln -s 源文件 链接文件-----------软

注意:如果软链接文件和源文件不在同一个目录,源文件要用绝对路径,不能用相对路径。

总结:软链接类似Windows的快捷方式,当删除源文件,那么软链接失效。硬链接可以理解为源文件的一个别名,多个别名所代表的是同一个文件。当rm一个文件的时候,硬链接数减1,当硬链接数为0 的时候,文件删除。

 

管道:指令1正确输出,作为指令2的输入

格式:指令操作1 | 指令操作2

 

tar:归档管理

格式: tar [参数] 打包文件名 文件

tar命令很特殊,其选项前面可以使用“-”,也可以不使用。

常用参数:

选项

含义

-c

生成档案文件,创建打包文件

-v

列出归档解档的详细过程,显示进度

-f(这个参数时必须的)

指定档案文件名称,f后面一定是tar文件,所以必须放选项列表最后面

-t

列出档案中包含的文件

-x

解开档案文件

注意:除了f需要放参数后面,其他参数随意。

 

gzip文件解压缩

tar只负责打包文件,不负责压缩。tar与gzip命令结合使用实现文件打包、压缩。用gzip压缩tar打包后的文件,其扩展名一般为XXX.tar.gz

命令使用格式:gzip [选项] 被压缩文件

常用选项:

选项

含义

-d

解压

-r

压缩所有子目录

注意:tar命令中一个参数-z,可以调用gzip实现一个先打包后压缩的过程。

用法:tar zcvf 压缩包名(这里可以是其他目录) 文件1 文件2...(注意这里文件前面不能有/,所以只能在本目录进行处理)

解压用法:

tar zxvf 压缩包名 (在其他目录下的话解压不出来)

 

bzip2文件解压缩

tar和bzip命令结合使用实现文件打包、压缩(用法和gzip一样)

与tar文件结合,打包后扩展名一般是XXX.tar.bz2

在tar命令中添加参数-j可用调用bzip2实现打包并压缩的过程。

压缩:tar -jcvf 压缩包名(这里可以是其他目录) 文件...(注意这里文件前面不能有/,所以只能在本目录进行处理)

解压:tar -jxvf 压缩包名(在其他目录下的话解压不出来)

 

zip/unzip文件解压缩

通过zip压缩文件的目录文件不需要指定扩展名,默认扩展名为zip

压缩:zip [-r] 目标文件(没有扩展名) 源文件

解压:unzip 压缩文件或unzip -d 指定目录 zip包

 

which:查看命令位置

查找并显示给定命令的绝对路径。环境变量PATH中保存了查找命令时需要遍历的目录。which指令会在

环境变量 PATH 设置的目录里查找符合条件的文件。也就是说,使用 which 命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。

 

chmod:修改文件权限

修改文件权限有两种格式:

字母法:

所有者

描述

u

user表示该文件的所有者

g

group表示与该文件的所有者属于同一组着,即用户组

o

other表示其他以外的人

a

all表示这三者皆是

我们使用“+,-,=”来修改权限

【+,-,=】

含义

+

增加权限

-

撤销权限

=

设定权限,其他没有指定的取消权限

 

【rwx】

含义

r

read表示可读取,对于目录文件,意味着可以通过ls查看目录中内容

w

write表示可写入,对于目录,意味着可在目录下创建新文件

x

excute表示可执行,对于目录,意味着可通过cd进入目录

字母法:chmod [ugoa] [+-] [rwx] 文件

 

数字法:rwx这些权限可以用数字来代替

字母

说明

r

读取权限:数字代号“4”

w

写入权限:数字代号“2”

x

执行权限,数字代号“1”

-

不具任何权限,数字代号0

 

sudo:切换管理员账号

sudo,暂时切换到超级管理员模式以执行超级管理员权限,提示输入密码为当前用户密码,而不是超级管理员密码,不过时间有限制,Ubuntu默认一次为时长15分钟。

sudo -s:从管理员账号切换到超级管理员

 

passwd:设置用户密码

超级管理员可以指定用户名无需以前密码确认直接修改用户密码,而用户可以用此命令不指定用户名直接修改自己的密码。

 

exit:退出登录账号

  • 如果是图形界面,退出当前终端
  • 如果是使用ssh远程登录,退出登录账户
  • 如果是切换后的登录用户,退出当前用户,返回到切换前的用户并返回到切换前目录

 

who:查看登录用户

who命令可用于查看当前所有登录系统的用户信息。

第一列为用户名称,第二列为连接方式;tty为用户直接连接电脑上,pts为远程登录。第三四列为日期时间,第五列为用户登录的ip地址。

    lb    tty7         2018-07-20 10:21 (:0)
    lb    pts/19       2018-07-20 10:24 (192.168.77.1)
 

reboot、shutdown:关机重启

命令

含义

reboot

重启

shutdown -r now

重启,多用户同时登录时,给别的用户提示

shutdown -h now

立刻关机,now相当于时间为0的状态

shutdown -h 23:00

系统在今天23:00会关机

shutdown -h +10

系统再过十分钟自动关机

 

Linux软件安装与卸载

  1. 通过apt-get包管理器从软件源中安装
  2. 通过deb格式的软件包安装
    1. centos:.rpm rpm -ivh *.rpm
    2. .deb dpkg -i *.deb
  3. 从软件源码手动编译安装

Ubuntu软件操作的相关命令

  • sudo apt-get update 更新源
  • sudo apt-get install package 安装包
  • sudo apt-get remove package 删除包
  • sudo apt-cache search package 搜索软件包
  • sudo apt-cache show package 获取包的相关信息,如说明、大小、版本等
  • sudo apt-get install package --reinstall 重新安装包
  • sudo apt-get -f install 修复安装
  • sudo apt-get remove package --purge 删除包,包括配置文件等
  • sudo apt-get build-dep package 安装相关的编译环境
  • sudo apt-get upgrade 更新已安装的包
  • sudo apt-get dist-upgrade 升级系统
  • sudo apt-cache depends package 了解使用该包依赖那些包
  • sudo apt-cache rdepends package 查看该包被哪些包依赖
  • sudo apt-get source package 下载该包的源代码
  • sudo apt-get clean && sudo apt-get autoclean 清理无用的包
  • sudo apt-get check 检查是否有损坏的依赖

 

切换软件源:

  1. 手动修改`/etc/apt/source.list`文件,然后需要在命令行中执行`sudo apt-get update`执行更新
  2. 图形界面修改,ubuntu下依次操作“系统设置-->软件和更新-->下载自”选择阿里云,163,清华等源,然后关闭的时候会自动更新

 

ssh使用

  1. 安装ssh服务
    1. sudo apt-get install openssh-server
  2. 安装了ssh客户端的终端登录,windows,linux,mc均可
    1. ssh 用户名@ip
  3. 其他软件辅助,xshell,MobaXterm,putty等

 

文件上传与下载

远程拷贝文件,scp -r的常用方法

  • 使用该命令的前提条件要求目标主机已经成功安装openssh-server,以及当前系统已经安装ssh客户端程序
  • 使用格式
    • scp -r ⽬标⽤⼾名@⽬标主机IP地址:/⽬标⽂件的绝对路径 /保存到本机的绝对/相对路径

    在后续会提⽰输⼊“yes”此时,只能输“yes”⽽不能简单输⼊“Y”

    注意:拷贝单个文件不需要加-r

 

远程上传

scp -r FolderName RemoteUserName@RemoteHostIp:RemoteFolder

scp -r FolderName RemoteHostIp:RemoteFolder

举例:

scp -r demo lb@192.168.77.128:/home/lb/文档/demo

远程下载

scp -r RemoteUserName@RemoteHostIp:RemoteFolder FolderName

举例:

scp -r lb@192.168.77.128:/home/lb/Demo2 C:/Demo

 

vim

vim的三种基本工作模式:命令模式,文本输入模式,末行模式

 

进入编辑模式

命令

含义

i和I

i在光标前插入,I在行首插入

a和A

a在光标后插入(光标会后退一位然后在前面插入,相当于在原光标后插入),A在行末插入

o和O

o在光标所在行下一行插入,O在光标所在行上一行插入

 

移动光标

命令

含义

h

光标向左移动

j

向下

k

向上

l

向右

H、M、L

整屏首行(H),中间行(M),最后一行(L)

^和$

^移动到行首,$移动到行末

G和gg

G文档最后一行,gg文档第一行

ctrl+f\ctrl+b

向前翻屏,返回翻屏

ctrl+d

向前半屛

ctrl+u

返回半屛

{

向上移动一段

}

向后移动一段

w、W

向前移动一个单词

b

向后移动一个单词

 

删除命令

命令

含义

X和x

x删除光标所在一个字符,X删除光标前一个字符

dd和ndd

dd剪切所在行,ndd剪切指定行数

d0和D

d0删除本行光标前所有内容,D删除光标及后面本行所有内容,,包含光标位置字符

dw

删除光标所在处到下一个空格处(包括空格)的文本

 

撤销命令

命令

含义

ctrl+r

翻撤销

u

撤销

复制粘贴命令

命令

含义

yy

复制当前行

nyy

复制n行

y^

行首到光标前一个字符

y$

光标处到行末

p

1.粘贴的内容不是整行的话在光标后插入,

2.粘贴的内容是整行的话,光标处下一行开新行粘贴

重复命令

命令

含义

.(点)

重复上一次指定的指令

选择文件缩进

命令

含义

V和v

V选择整行,v选择单个字符

<<和>>

<<向左缩进,>>向右缩进

查找替换

命令

含义

命令模式下r

r替换光标字符

命令模式下R

替换光标处以及后面的全部,输入一个字符替换一个,到行末继续插入

末行模式下,/+str

n查找下一个,N查找上一个

末行模式下,%s/abc/123/g

将文件中所有abc替换为123

末行模式下,1,10s/abc/123/g

将第1行至第10行之间abc替换成123

保存退出

命令

含义

:wq

写入并保存

:w

写入

:w 名称

当前数据写入新文件

:q!

强制退出

:f

当前数据写入新文件

:x

保存

ZZ/Shift+zz

保存退出

 

本文标签: 命令 核心 常用 python Linux