关于路径:./ 表示当前这个目录, …/表示上一季度目录
— 表示从上一个路径切换到当前路径时,表示-上一个路径
可以使用绝对路径,也可以使用相对路径
linux本地文件/目录的绝对路径,是 / 开头
cd路径: 切换到某个目录
ls路径:列出该路径文件夹下一级的文件
ls + 回车 = ls ./ + 回车 (相对路径写法)
cd/ 切换到根目录
ls / bin = ls./bin =ls bin
ls / bin: 绝对路径
ls./bin =ls bin :相对路径
-a 列出目录下的所有文件,包括以 . 开头的隐含文件。
-d 将目录象文件一样显示,而不是显示其下的文件。 如:ls –d 指定目录
-k 以 k 字节的形式表示文件的大小 ls –alk 指定文件
-l 以详细方式显示下一级子文件/文件夹(省略写法: || )
-r 对目录反向排序
-t 以时间排序。 (上次修改时间)
-R 递归的方式列出所有子目录下的文件。
改变工作目录,将当前工作目录改变到指定目录下
cd … : 返回上级目录
cd ~:进入用户家目
cd -:返回最近访问目录
/ 称为根目录
. 称为当前目录
… 称为当前目录的上级目录
root:超级管理员的用户目录
/ect:系统配置文件的目录
cd/h +tab键 自动补全
cd/ tab键 (连点两次)
如果有多个层级(其中存在没有的目录时,使用 -p ),就可以创建多层级的目录
删除文件/目录
默认删除会提示,要求输入 y 或 n 表示确认删除或不删除
-f 即使文件属性为只读(即写保护),直接删除(不提示)
-i 删除前逐一询问确认
-r 删除目录,递归删除目录下所有的内容
注意:千万不要运行 rm -rf/ 尤其是在公司的生产服务器
cp 源路径 目标路径 :复制文件或文件夹
复制文件:
cp 文件路径 已存在的目录路径:把文件复制到目标目录下
cp文件路径 已存在的目录路径/重命名的文件名称 :把文件复制到目标路径下,重命名文件名称
复制文件夹:递归复制源目录 到 已存目标目录下边
-f 或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在 (一般情况下不要使用)
-i 或 --interactive 覆盖文件之前先询问用户
-r递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链接,则一律视为普通文件处理
-R 或 --recursive递归处理,将指定目录下的文件及子目录一并处
cp -r : 源目录路径 目标不存在的一个目标目录路径:复制源目录到 目标目录(重命名复制后的目录名称)
mv [选项] 源文件或目录 目标文件或目录
目标路径:移动或者重命名
mv 源文件路径 不存在的一个路径 :移动文件并重命名(如果只是重命名,其实也是使用 mv )
-f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖
-i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!
视mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中。
当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名。
当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源 **文件均移至目标目录中 **
显示文件路径:显示该文件所有内容
注意:不要对非常大的文件使用此命令 效率非常低
-n 对输出的所有行编号 (表示需要显示行号)
这是一个linux上的文本编辑器程序,类似windows中记事本
只读模式:不能修改
进入编辑模式:
按 i :当前光标位置,插入新的输入内容
按 o :当前光标位置下一行,插入一个新行
退出程序:
输入 :wq 保存并退出(w表示保存,q表示退出)
输入**:q!**强制不保存就退出(!表示强制执行)
搜索:
/搜索的内容:光标移动到第一个位置,按 n, 切换到下一个匹配的位置
shift+n切换到上一个
g连点两下 : 光标切换到文档首部部
shift+g :光标切换到文档尾部
还原上次内容 ,按 u
编辑模式:键盘输入的内容就会插入到文本中
进入只读模式:按Esc
查看文件内容,不会立刻把所有内容加载到内存中,也能进行查找
显示文件内容:只显示一部分,需要和文档 vi 只读模式操作差不多
j k / 方向键: 向上向下滚动屏幕.
-N :同时显示每行的行号
/字符串 :向下搜索“字符串”的功能
n :重复前一个搜索(与 / 或 ? 有关)
q : 退出
显示文件内容,从第一行开始,总共显示【行数】这么多行
用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。
tail-n 行数 文件路径 显示行数
-f 循环读取文件内容(ctrl+z 退出)
-n<行数> 显示行数
grep“搜索内容” 文件/目录 路径:在[文件]或[目录下的文件]中搜索,匹配到“搜索到内容”的内容
用于查找文件中是否包含指定字符串, 并显示对应的行.
也经常结合 | 管道符号,在某个输出结果中,再次进行搜索
无输出结果,则不打印
-n<行数> 显示的行数
-w 全字匹配. 要求整个单词都完全相同的结果才能匹配出来, 而不仅仅是一个单词的一部分.
-r 递归查找. 可以搜索多级目录下的所有文件.
–color 高亮查找到的结果
–include 指定查找某些文件
–exclude 指定排除某些文件
< : (右边的东西输出到左边,左边以输入来接收)
cat以输入接受 test.txt 文件的输出,cat本身时打印输出,所以和不加 < 作用一样
>: 右边整个的输出结果,右边的文件以输入的方式接收
tail -n10 test.txt :整个输出的内容,保存在 result.txt 中
左边执行时,报错的信息输出到右边的文件中
如果没有报错,就是空
标准错误重定向 (2>), 注意 2 和 > 之间不能有空格
将这部分错误信息 如下:
输出到如下:
管道是一种古老的 “进程间通信” 方式. 在 Linux 指令中可以使用 | 作为管道标记.
意思是将前一个指令标准输出的内容, 作为第二个指令的标准输入内容
管道 | 进程间通信的方式:把左边进程的输出结果,右边的进程以输入来接收
常见的使用方式:
输出某个文件,从 x 到 y行的内容:
1.head -n[y] 文件路径 | tail y-x + 1
2.tail -n[总行数-y+1] 文件路径 | head -n[y-x+1]
显示所有进程的网络信息
结合 | grep 就可以进行再次搜索,比如搜索进程名称,端口号(根据进程名称/ 端口号搜索进程的信息)
没有这个命令的话,需要先执行安装一个软件包
tmocat是否启动成功:
(1)检查进程是否成功
(2)检查tomcat的启动日志文件,查看是否有异常堆栈情况
-a 显示所有正在或不在侦听的套接字
-n 显示数字形式地址而不是去解析主机、端口或用户名
-p 显示套接字所属进程的PID和名
netstat -anp
netstat -anp | grep "进程名"
netstat -anp | grep "端口号"
用于查看当前系统上运行的进程
ps aux | grep “进程名称/pid”
ps-ef|grep “进程名称/pid”
pid:操作系统为每个进程分配的一个身份标识
a 显示一个终端的所有进程
u 以用户为主的格式来显示程序状况
x 显示所有程序,不以终端机来区分
ps aux # 显示系统上所有的进程
ps aux | grep "进程名"
ps aux | grep "进程id"
一般使用,可以先通过 netstat 通过端口号查找到进程的 pid ,然后使用ps通过pid查找进程信息
Linux下有两种用户:超级用户(root)、普通用户
超级用户:可以再linux系统下做任何事情,不受限制
普通用户:在linux下做有限的事情。
超级用户的命令提示符是“#”,普通用户的命令提示符是“$”。
usuadd:添加账号
passwd:账号密码
命令 useradd [用户名]
功能 创建新的用户
useradd test
命令 passwd [用户名]
功能 设置或修改用户密码
passwd test
命令:su [用户名]
功能:切换用户。从当前账号转换到另一个账号
例如,要从root用户切换到普通用户user,则使用 su user。
要从普通用户user切换到root用户则使用 su root(root可以省略),此时系统会提示输入root用户的口令输入密码的时候不显示
访问一个文件的人可能分成三种类别.
Linux对文件/目录权限管理,使用三种角色来管理
d:文件夹
-:普通文件
l:软链接(类似Windows的快捷方式)
b:块设备文件(例如硬盘、光驱等)
p:管道文件
c:字符设备文件(例如屏幕等串口设备)
s:套接口文件
读(r/4):Read对文件而言,具有读取文件内容的权限;对目录来说,具有浏览该目录信息的权限
写(w/2):Write对文件而言,具有修改文件内容的权限;对目录来说具有删除移动目录内文件的权限
执行(x/1):execute对文件而言,具有执行文件的权限;对目录来说,具有进入目录的权限
“-” 表示不具有该项权限
一个角色,具有的权限,也可以使用数值来表示: 把拥有的权限数值相加,结果就是最终该角色具有的权限数值
如上图,该文件拥有者是 root 用户,权限为rwx,用数值表示就是 4+2+1=7
文件所属用户住是root用户组,权限是 r-x ,数值表示就是 4+1=5
1-7的数值,每个都标识了唯一的一种权限组合
##修改文件权限
**功能:**设置文件的访问权限
**格式:**chmod [参数] 权限 文件名
常用选项:
R -> 递归修改目录文件的权限
说明:只有文件的拥有者和root才可以改变文件的权限
chmod命令权限值的格式
① 用户表示符+/-=权限字符
+:向权限范围增加权限代号所表示的权限
-:向权限范围取消权限代号所表示的权限
=:向权限范围赋予权限代号所表示的权限
用户符号:
u:拥有者
g:拥有者同组用
o:其它用户
a:所有用户
\# chmod u+w /home/abc.txt
\# chmod o-x /home/abc.txt
\# chmod a=x /home/abc.txt
②三位8进制数字
实例:
\# chmod 664 /home/abc.txt
\# chmod 640 /home/abc.txt
d:文件夹
-:普通文件
l:软链接(类似Windows的快捷方式)
b:块设备文件(例如硬盘、光驱等)
p:管道文件
c:字符设备文件(例如屏幕等串口设备)
s:套接口文件
修改目录权限:如果不加 -r 参数,只修改了这个目录的权限,子目录/子文件权限都不会改变
加 -r 参数,表示递归修改权限
chomd u+r 文件或目录的路径
chomd 三个数字 文件或目录的路径
分别表示拥有者,所属用户组,其他用户的权限