Linux学习1

一、目录操作

pwd             查看当前目录所在位置
cd              当前用户主目录
cd   ~          当前用户主目录
cd   /          根目录
cd   .          上一次访问的目录
cd   ..         上一级目录
cd /home        切换到home目录下
ls -l           列出当前目录下的文件信息(此命令很常用,简化的格式为 ll)
ls -al          列出当前目录下的文件信息(包括隐藏文件,特殊目录)
ll              查看当前目录下文件的所有信息
ll /home        列出home目录下所有信息
clear           清屏

创建目录:

mkdir [选项] 目录:
mkdir 目录名: 创建一个目录
mkdir -p 目录1/目录2/目录3: 创建多级目录


mkdir aaa                      在当前目录下创建一个名为aaa的文件
mkdir ./aaa                    在当前目录下创建一个名为aaa的文件
mkdir /ccc                     在根目录下创建一个名为ccc的文件
mkdir -p /test1/test2/test3    递归创建test1/test2/test3文件
mkdir -m 477 test3             修改test3的权限
      -m:配置文件的权限

搜索命令:

find / -name 'b'        查询根目录下名字为b的文件
find / -name 'b*'       查询根目录下名字以b开头的文件



grep:指定关键字来搜索文件中的内容
语法:grep [选项] 关键字 文件
选项:
grep -n 关键字 文件 : 显示搜索出的关键字匹配的行号
grep -i 关键字 文件:忽略关键字的大小写并显示出匹配的内容

重命名/剪贴:

mv :对文件/目录进行移动或者重命名
语法:mv 数据源 目的
移动:mv 文件/目录 存在的目的
重命名:mv 文件/目录 不存在的文件名


mv 原文件 到达文件
mv aaa /tomcat            移动aaa文件到根目录的tomcat文件中,文件名也叫aaa
mv aaa tomcat/aaa         移动aaa文件到根目录的tomcat文件中,文件名修改为aaa
mv aaa tomcat/bbb         移动aaa文件到根目录的tomcat文件中,文件名修改为bbb

删除目录:

rm :删除文件/文件夹
rm -i 文件:删除时有提示(默认就有提示)
rm -f 文件:强制删除文件(不能删除文件夹)
rm -r 文件夹:删除文件夹(有提示)
使用最多:rm -rf 文件/文件夹 —— 强制删除文件/文件夹


rm -r aaa            删除aaa文件,删除时有提示
rm -rf aaa           强制删除aaa文件,删除时没有提示
rm -rf a.txt         强制删除当前目录下的a.txt文件
rm -r ./a*           提示删除当前目录下以a开头的所有文件
rm -f a.txt          删除a.txt文件,不会有提示
    rm -f:只能删除文件,不能删除文件夹


如果不确定的情况下使用rm -r 删除文件/文件夹,他是有提示的

切换目录:

二、文件操作

创建文件:

touch 文件名:
touch 文件名: 如果文件已存在,修改文件时间; 如果文件不存在,新建一个文件
touch 文件1 文件2 文件3 文件4..... : 创建(同一级目录下的)多个文件


touch a.txt                创建a.txt文件,如果a文件已存在,修改文件时间
touch /a.txt               在根目录下创建a.txt文件
touch 文件1 文件2 文件3     在同一级目录下创建多个文件

小案例

删除test2下的所有文件
rm -rf test2/*

递归删除.pyc格式的文件
find . -name '.pyc' -exec rm -r {} \;

打印当前文件夹下140000大小的文件
find . -name '*' -size 140000c -print

递归删除140000大小的文件
find . -name '*' -size 140000c -exec rm -r {} \;

递归删除140000大小的文件并打印出来
find . -name '*' -size 140000c -print -exec rm -r {} \;

拷贝文件/文件夹:

cp:拷贝文件/文件夹

cp 源数据 目的文件 : 拷贝文件(如果存在同名目的文件,提示是否进行覆盖)
cp -r 源目录 目的目录:拷贝目录/文件夹
cp -v 源数据 目的文件: 拷贝时显示对应的进度

三、文件内容操作

修改文件内容:

vim a.txt            进入a.txt文件内(一般模式)
a/i/o(按键)         进入插入模式(编辑模式)
Esc(按键)           退出
:wq                  保存退出(先要退出才能保存)
:q!                  不保存退出(内容更改)
:q                   不保存退出(内容没有更改)

查看文件内容:

cat:显示文件的全部内容。文件内容较少时使用
cat -n 文件名: 显示内容时同时显示行号
less : 分屏显示文件的内容,一页一页的显示。文件内容较多时使用
less -N 文件名: 显示内容时同时显示行号
more: 分屏显示文件的内容,一页一页的显示,显示当前已经显示的百分比。
more 文件名


cat a.txt             查看a.txt的所有内容,文件内容较少的时候使用
cat -n a.txt          显示内容的同时显示行号

more a.java		      从第一页开始查看a.java文件内容,按回车键一行一行进行查看,
                            按空格键一页一页进行查看,q退出;
less a.java		      从第一页开始查看a.java文件内容,按回车键一行一行的看,
                            按空格键一页一页的看,支持使用PageDown和PageUp翻页,q退出;
less -n a.java        显示内容的同时显示行号

more和less的区别:

  1. less可以按键盘上下方向键显示上下内容,more不能通过上下方向键控制显示
  2. less不必读整个文件,加载速度会比more更快
  3. less退出后shell不会留下刚显示的内容,而more退出后会在shell上留下刚显示的内容.
  4. 由于more不能后退.

小案例:

实时查看文件:
tail -f a.txt            查看a.txt文件后10行内容

前后几行查看:
head a.txt               查看a.txt文件前10行内容   
head -n 8 a.txt          查看a.txt文件前8行内容
tail -n 8 a.txt          查看a.txt文件后8行内容

指定查找
grep under 123.txt        在123.txt文件中搜索under字符串,显示行
grep -n under 123.txt     在123.txt文件中搜索under字符串,显示行及行号
grep -v under 123.txt     在123.txt文件中搜索under字符串,显示没搜索到的行
grep -i under 123.txt     在123.txt文件中搜索under字符串,显示行
grep -ni under 123.txt    在123.txt文件中搜索under字符串,显示行及行号

终止命令

ctrl + c

三、系统日志

cat /etc/redhat-release		查看操作系统版本
/var/log/message			系统启动后的信息和错误日志,是Red Hat Linux中最常用的日志之一
/var/log/message			系统启动后的信息和错误日志,是Red Hat Linux中最常用的日志之一 
/var/log/secure				与安全相关的日志信息 
/var/log/maillog			与邮件相关的日志信息 
/var/log/cron				与定时任务相关的日志信息 
/var/log/spooler			与UUCP和news设备相关的日志信息 
/var/log/boot.log			守护进程启动和停止相关的日志消息 

四、压缩和解压缩

Windows系统常用rar

Mac系统常用zip

Linux系统常用tar.gz

压缩(tar -cvf)

tar -cvf 打包文件.tar 被打包文件/路径
tar -cvf start.tar a.java b.java		将当前目录下a.java、b.java打包
tar -cvf start.tar ./*					将当前目录下的所欲文件打包压缩成haha.tar文件

tar -zcvf start.tar.gz a.java b.java	将当前目录下a.java、b.java打包
tar -zcvf start.tar.gz ./*				将当前目录下的所欲文件打包压缩成start.tar.gz文件

解压缩(tar -xvf)

tar -xvf 打包文件.tar

tar -xvf start.tar						解压start.tar压缩包,到当前文件夹下;
tar -xvf start.tar -C usr/local 		(C为大写,中间无空格)
										解压start.tar压缩包,到/usr/local目录下;

tar -zxvf start.tar.gz					解压start.tar.gz压缩包,到当前文件夹下;
tar -zxvf start.tar.gz -C usr/local 	(C为大写,中间无空格)
										解压start.tar.gz压缩包,到/usr/local目录下;


tar xf node-v12.18.1-linux-x64.tar.xz

压缩(zip)可以在windows、linux、mac下使用

zip: 针对特定的文件/目录进行压缩/解压缩
zip -r 打包文件 被压缩的文件
    打包文件:指压缩后的压缩包的名字
    被压缩的文件: 需要进行压缩的文件
如果有多个需要进行压缩的文件,可以放入到同一个目录下
或者:zip -r file *.txt 压缩所有txt为后缀的文件

zip lib.zip tomcat.jar							将单个文件压缩(lib.zip)
zip -r lib.zip lib/								将目录进行压缩(lib.zip)
zip -r lib.zip tomcat-embed.jar xml-aps.jar		将多个文件压缩为zip文件(lib.zip)	

解压缩(unzip)

解压缩:
unzip 打包文件.zip : 解压到当前目录
unzip -d 解压后的目录 打包文件.zip :解压到指定目录


unzip file1.zip  								解压一个zip格式压缩包
unzip -d /usr/app/com.lydms.english.zip			将`english.zip`包,解压到指定目录下`/usr/app/`

五、文件的详细信息

序号权限英文缩写数字代号
1readr4
2writew2
3执行excutex1
4无权限————0
 R:Read  w:write  x: execute执行
-rw-r--r-- 1 root root  34942 Jan 19  2018 bootstrap.jar
前三位代表当前用户对文件权限:可以读/可以写/不能执行
中间三位代表当前组的其他用户对当前文件的操作权限:可以读/不能写/不能执行
后三位其他用户对当前文件权限:可以读/不能写/不能执行


数字法:
chmod 777 文件名
常见的数字组合:(u表示用户/g表示组/o表示其他/a表示三者都有)
777:u=rwx,g=rwx,o=rwx
755:u=rwx,g=r-x,o=r-x
644:u=rw-,g=r--,o=r--


字母法:
chmod u+r 文件名
+:增加权限
-:撤销权限
=:设定权限

六、系统信息相关命令

重启与关机:reboot、shutdown

reboot:重启操作系统

shutdown:关闭操作系统
shutdown -r now:重新启动操作系统,shutdown会给用户提示
shutdown -h now:立刻关机
shutdown -h 20:45:系统将在今天的20:45关机
shutdown -h +5:系统再过5分钟会自动关机

查看系统进程

ps -aux:查看当前系统中正在执行程序的详细情况
    a:显示终端上的所有进程,包括其他用户的进程
    u:显示进程的详细状态
    x:显示没有控制终端的进程

kill -9 进程代号:强制终止指定代号的进程(小心使用)
top:动态显示正在运行的进程且按照所占内存大小进行排序

查看系统监听的端口

netstat:用于显示各种网络相关信息,需要root权限

netstat -anptu:查看所有进程和端口使用情况
        a:显示所有哦已打开的端口
        n:不用别名显示,只用数字显示
        p:显示进程号和进程名
        t:显示所有tcp协议端口
        u:显示所有udp协议端口

netstat -anptu | grep mysql:找到使用mysql的端口号

 查看日志信息

head -15 文件名:查看文件前15行内容
tail -15 文件名:查看文件后15行内容
tail -f 文件名:实时监控文件内容

查找文件

find [路径] -name '文件名':查找指定路径下的文件

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

find . -name '*.py':查找当前目录下所有后缀为py的文件

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值