LINUX——Linux操作系统常用命令/常见文件篇
Posted 奇妙代码
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LINUX——Linux操作系统常用命令/常见文件篇相关的知识,希望对你有一定的参考价值。
LINUX——Linux操作系统常用命令/常见文件篇
1、pwd、ls、cd
❤️ pwd:显示当前所在位置
chen@Hello:~$ pwd
/home/chen
❤️ ls:显示文件列表
❤️ ls -a:显示影藏文件的
❤️ ls -l:垂直列表的形式显示
❤️ ls-a 显示当前目录下的所有文件及文件夹包含的隐藏文件
❤️ ls-b 把文件中不可输入的字符用反斜杠加字符编号形式输出
❤️ ls-c 按照修改时间显示
❤️ ls-d 显示目录信息
❤️ ls-s 在每个文件的后面打印出来文件的大小
chen@Hello:~$ ls -a
. 公共的 视频 文档 音乐 .bash_history .bashrc .config .local .profile .ssh .viminfo
.. 模板 图片 下载 桌面 .bash_logout .cache .gnupg .mozilla snap .sudo_as_admin_successful
chen@Hello:~$ ls -c
桌面 snap 视频 图片 公共的 模板 文档 下载 音乐
chen@Hello:~$ ls -l
总用量 36
drwxr-xr-x 2 chen chen 4096 3月 28 14:48 下载
drwxr-xr-x 2 chen chen 4096 3月 28 14:48 音乐
........
drwxr-xr-x 3 chen chen 4096 4月 2 00:28 桌面
drwx------ 3 chen chen 4096 3月 28 15:08 snap
❤️ cd:进入文件夹
❤️ cd ~:回到家目录
❤️ cd …:回到上一层
chen@Hello:~$ pwd
/home/chen
chen@Hello:~$ cd 桌面
chen@Hello:~/桌面$ pwd
/home/chen/桌面
chen@Hello:~/桌面$ cd ..
chen@Hello:~$ pwd
/home/chen
chen@Hello:~$ cd ~
chen@Hello:~$ pwd
/home/chen
❤️ clear:清屏
扩展:Tab:自动补全;方向键:取得历史命令
通配符(*、?)、括号:
❤️ ls .txt //显示后缀为txt的文件
❤️ ls 1 //显示所有以1开头的文件
❤️ ls 1*.txt //显示所有以1开头的txt文件
❤️ ls ??.txt //显示所有以txt结尾的 两个 字符的文件
❤️ ls [1234]23.txt //显示第一个字符为1234中的一文件
chen@Hello:~/桌面/范例图片$ ls *.png
5.png 6.png 7.png
chen@Hello:~/桌面/范例图片$ ls 1*
111.jpg 1.jpg
chen@Hello:~/桌面$ ls D??.txt
DOS.txt
2、touch、mkdir、rm
- touch:只能创建文件
❤️ touch test.txt//创建文件test.txt
❤️ touch .test.txt//创建影藏文件test.txt
chen@Hello:~/桌面$ touch test.txt
chen@Hello:~/桌面$ ls -l
总用量 16
drwxr-xr-x 3 chen chen 4096 4月 3 20:17 ./
.......
-rw-rw-r-- 1 chen chen 0 4月 3 20:17 test.txt
chen@Hello:~/桌面$
- mkdir:创建目录
❤️ mkdir bb //创建文件夹bb
chen@Hello:~/桌面$ mkdir bb
chen@Hello:~/桌面$ ls -l
总用量 12
drwxrwxr-x 2 chen chen 4096 4月 3 20:20 bb
-rw-rw-r-- 1 chen chen 0 4月 3 20:17 test.txt
- rm:移除文件
❤️ rm test.txt //移除test.txt文件
❤️ rm -d aa //移除aa空目录
❤️ rm -r aa //移除aa目录及其里面的内容
chen@Hello:~/桌面$ ls -l
....
drwxrwxr-x 2 chen chen 4096 4月 3 20:20 bb
....
chen@Hello:~/桌面$ rm -d bb
chen@Hello:~/桌面$ ll
总用量 16
drwxr-xr-x 3 chen chen 4096 4月 3 20:23 ./
drwxr-xr-x 17 chen chen 4096 3月 28 20:16 ../
drwxrwxr-x 2 chen chen 4096 4月 3 20:06 范例图片/
-rwxrw-rw- 1 chen chen 124 3月 24 18:10 DOS.txt*
-rw-rw-r-- 1 chen chen 0 4月 3 20:17 test.txt
chen@Hello:~/桌面$
3、mv、cp、关机/重启
- mv:移动
❤️ mv test.txt aa //将文件test.txt移动到aa文件夹下(相对/绝对)
❤️ rm bb aa //将bb目录移动到aa目录下
❤️ mv test.txt ./tt.txt //将test文件剪切到当前目录改为tt文件(重命名)
❤️ shutdown -h now 立刻关机
❤️ shutdown -h 5 5分钟关机
❤️ reboot 重启
4、find搜索
- 文件名精确搜索
❤️ find /home -name 125.txt //根据名字搜索125.txt的文件
chen@Hello:~/桌面$ find /home -name test.txt
/home/chen/桌面/test.txt
- 模糊搜索
❤️ find /home -name ‘12*’ //搜索在这文件里所有以12开头的文
❤️ find /home -iname ‘abc*’ //忽略大小写的搜索在home下以abc开头的所有文件
chen@Hello:~/桌面$ find /home -name 'te*'
/home/chen/.mozilla/firefox/zrhao537.default-release/storage/temporary
/home/chen/桌面/test.txt
- 按照大小搜索
❤️ //1kuai=512byte=0.5k
find /home/chen/Desktop/ -size +1//大于512字节的
- 所属人搜索
❤️ find /home/chen/Desktop/ -user chen//这个目录下属于chen的文件
chen@Hello:~/桌面$ find /home/chen/桌面/ -user chen
/home/chen/桌面/
/home/chen/桌面/test.txt
/home/chen/桌面/DOS.txt
/home/chen/桌面/范例图片
/home/chen/桌面/范例图片/1.jpg
/home/chen/桌面/范例图片/6.png
- 按照修改时间搜索
❤️ find /home/chen/Desktop/ -mmin -5//5分钟之内被修改的文件(+5:5分钟以前被修改的文件)
- 文件类型搜索/id搜索
❤️ find /home/chen/Desktop/ -type f//文件
❤️ find /home/chen/Desktop/ -type d//目录(文件夹)
❤️ find /home/chen/Desktop/ -type l//软连接
显示文件id:
ls -i(以列表显示显示就是ls -li):
find /home -inum 1182321
- 扩展(组合查找):
❤️ find /home/chen/Desktop/ -name ‘a*’ -a -type f//满足a开头且是文件的
5、cat、more
❤️ cat 12.txt//全部展示
❤️ cat /etc/services//
❤️ more 1.txt//显示一页的内容(空格上一页/B下一页)
chen@Hello:~/桌面$ cat DOS.txt
del "F:\\System" //del 删除文件夹
chen@Hello:~/桌面$
6、grep内容搜索
❤️ grep pas 1.txt//显示pas的文件
❤️ grep -n use 1.txt//查找use所在的行号显示行号
7、>、>>
❤️ echo hello > 1.txt //将hello写入进1.txt文件中
❤️ echo world >> 1.txt //将world追加写入到1.txt中
ls > 1.txt //ls展示的内容写入到1.txt中
ll >> 1.txt//ll展示的内容追加到1.txt中
8、软链接(快捷方式)
❤️ ln a/abc softlink //给a目录下的abc创建一个名为softlink的快捷方式
9、用户添加、用户密码、简单组
❤️ sudo useradd user1//添加user1用户
❤️ cat /etc/passwd //查看添加的用户
❤️ sudo passwd user1//设置user1的用户密码
❤️ sudo passwd root//设置root密码(ubuntu初次安装就需要设置初始root密码)
❤️ sudo useradd -g user1 user2//创建一个user2在user1这个组里面
10、用户切换、删除
❤️ su root //切换到root用户
❤️ su user1//切换到user1用户
❤️ su - user1//切换到user1的家目录
❤️ exit //退出用户
❤️ root用户下(不是root下加sudo):
❤️ userdel user1//删除user1用户
❤️ userdel -r user1//连同家目录一起删除
❤️ userdel -f user1//强制删除
11、用户组的增、删、改(root)
❤️ groupadd group1//添加用户组group1
❤️ cat /etc/group//查看用用户组
❤️ groupmod -n group2 group1//将组1改为组2
12、文件上传下载
-
方法一:安装客户端:FileZilla
-
方法二:在服务终端安装在线安装(工具为:SecureCRT)
yum install lrzsz //安装lrzsz文件传输工具
上传(上传在当前所在目录):
rz(弹出的窗口中选择添加即可)
下载(下载到所设置的目录):
sz 18.jpg//下载18.jpg到客户端
- 方法三:Linux自带的ftp
在SecureCRT中按Alt+P
上传:
put d:/crt_up/1.jpg//将1.jpg上传到/root(连接的用户下)下
下载:
get 1.jpg//将用户(/root)下的1.jpg下载到客户端的文档中
13、tar(打包或解压)
相应参数意义:
❤️ -c:创建一个tar文件
❤️ -v:显示运行过程的信息
❤️ -f:指定文件名
❤️ -z:调用gzip压缩命令进行压缩
❤️ -t:查看压缩文件的内容
❤️ -x:解开tar文件
打包:
tar -cvf aa.tar aa/ //将aa目录打包成aa.tar
打包压缩:
tar -zcvf bb.tar.gz aa/ //将aa目录打包压缩成bb.tar.gz
解压当前目录:
tar -zxvf bb.tar.gz//将bb.tar.gz解压当前文件夹下
解压到指定目录:
tar -zxvf bb.tar.gz -C ./c //将bb.tar.gz解压到当前的c(自行创建)目录下
14、文件权限(chmod)
文件类型 | - - - 当前用户权限 | - - - 当前组内其他用户权限 | - - -其他用户权限 |
---|---|---|---|
-:文件 d:文件夹 l:连接 | r:读(4) w:写(2) x:执行(1) | r:读(4) w:写(2) x:执行(1) | r:读(4) w:写(2) x:执行(1) |
❤️ 1、chmod u=rwx,g=r 1.txt//对于1文件,用户可读执行,同组下其他用户只能如,其他用户没有权限
❤️ 2、chmod 755 1.txt //表示用户可读写执行,同组其他可读可执行,其他可读可执行
15、虚拟机中的linux初始化
开启VM8这个网卡,选择nat模式
1、安装net-tools解决ifconfig问题
sudo apt install net-tools //解决ifconfig报错问题,需要安装这个工具
E: 无法获得锁 /var/cache/apt/archives/lock - open (11: 资源暂时不可用)
E: 无法对目录 /var/cache/apt/archives/ 加锁
如果安装出现以上可以输入一下命令:
sudo rm /var/cache/apt/archives/lock
sudo rm /var/lib/dpkg/lock
(可先输入sudo rm /var/cache/apt/archives/lock 在安装net-tools这个工具)
2、安装配置SSH远程
前言:
1、Ubuntu默认并没有安装ssh服务
chen@chen-virtual-machine:~$ ssh localhost
ssh: connect to host localhost port 22: Connection refused
2、如果只有agent,说明没有安装openssh-server(ps -e|grep ssh)
chen@chen-virtual-machine:~$ ps -e|grep ssh
1632 ? 00:00:00 ssh-agent
安装:
输入:sudo apt-get install openssh-server
检测:
chen@chen-virtual-machine:~$ ps -e|grep ssh
1632 ? 00:00:00 ssh-agent
4692 ? 00:00:00 sshd
3、安装vim编辑工具
sudo apt install vim
4、虚拟机安装wm-tools
ubuntu为例:
sudo apt-get update
sudo apt-get install open-wm-tools-desktop
16、SSH远程
尽量在root模式的情况下配置
配置:
iptables -t filter -A INPUT -s 192.168.23.1/32 -p TCP --dport 22 -j ACCEPT //允许23.1地址远程连接
iptables -t filter -A INPUT -p TCP --dport 22 -j DROP //不允许连接(这个在规则的最后添加)
如果要删除该规则就把A改为D
保存:
service iptables save
例子说明1:
root@chen-virtual-machine:/home/chen# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT tcp -- 192.168.23.1 anywhere tcp dpt:ssh
DROP tcp -- anywhere anywhere tcp dpt:ssh
ACCEPT tcp -- 192.168.23.131 anywhere tcp dpt:ssh
//这种情况只有23.1可以通过ssh远程访问
例子说明2:
root@chen-virtual-machine:/home/chen# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT tcp -- 192.168.23.1 anywhere tcp dpt:ssh
ACCEPT tcp -- 192.168.23.131 anywhere tcp dpt:ssh
DROP tcp -- anywhere anywhere tcp dpt:ssh
//这种情况只有23.1和23.131可以通过ssh远程访问
17、防火墙(以Ubuntu为例)
❤️ 1、安装/卸载防火墙:
sudo apt install ufw //sudo: ufw:找不到命令就安装
sudo apt-get remove ufw //卸载防火墙
2、允许ssh:
sudo ufw allow ssh //一般都是默认允许的(了解)
❤️ 3、启动/关闭/查看/重置防火墙
sudo ufw enable //启动防火墙
sudo ufw disable //关闭防火墙
sudo ufw status //查看防火墙状态
sudo ufw reset //重置防火墙并删除所有活动规则(初始状态)
❤️ 4、打开端口80 - HTTP
sudo ufw allow http
或sudo ufw allow 80/tcp
❤️ 5、打开端口443 - HTTPS
sudo ufw allow https
或sudo ufw allow 443/tcp
❤️ 6、允许端口范围
sudo ufw allow 8000:8100/tcp
sudo ufw allow 8000:8100/udp
❤️ 7、允许特定的IP地址
sudo ufw allow from 192.168.23.1//允许所有端口使用该IP访问
sudo ufw allow from 192.168.23.1 to any port 22 //允许使用端口为22的该IP地址访问(ssh)
❤️ 8、允许子网
sudo ufw allow from 192.168.1.0/24 to any port 3306//允许该网段访问mysql
❤️ 9、拒绝连接
sudo ufw deny from 192.168.23.1//拒绝所有端口使用该IP访问
sudo ufw deny from 23.24.25.0/24 to any port 80//拒绝对端口80的访问
sudo ufw deny from 23.24.25.0/24 to any port 80//拒绝对端口443的访问
❤️ 10、删除防火墙规则
步骤一:sudo ufw status numbered //知道规则编号
状态: 激活
至 动作 来自
[ 1] 22/tcp ALLOW IN Anywhere
[ 3] 22/tcp (v6) ALLOW IN Anywhere (v6)
步骤二:sudo ufw delete 1 //删除编号为1的规则
18、scp远程传输文件
❤️ 1、上传本地文件到服务器:
scp /path/filename username@servername:/path/
❤️ 2、从服务器上下载文件:
scp username@servername:/path/filename /var/www/local_dir
❤️ 3、从服务器下载整个目录及内容:
scp -r username@servername:/var/www/remote_dir/(远程目录) /var/www/local_dir(本地目录)
❤️ 4、上传目录到服务器:
scp -r local_dir username@servername:remote_dir
附加案例:
一、单个文件:
❤️ 例1:将网工里面的1.png 上传 到服务器的/home/chen/桌面目录下
C:\\Users\\xns\\Desktop\\网工>scp 1.png chen@192.168.23.130:/home/chen/桌面
❤️ 例2:从服务器的/home/chen/桌面的1.png下载到本地E:/A目录下(要有A目录才行)
C:>scp chen@192.168.23.130:/home/chen/桌面/1.png E:\\A
8 例3:从服务器的/home/chen/桌面的1.png下载到本地E:并重命名为A.png
C:scp chen@192.168.23.130:/home/chen/桌面/1.png E:\\A.png
二、文件夹
❤️ 例1:将桌面上的范例照片目录 上传 到/home/chen/桌面下
C:\\Users\\顾念远方\\Desktop>scp -r 范例图片 chen@192.168.23.130:/home/chen/桌面
❤️ 例2:将服务器上的目录下载到E:\\A目录下
C:>scp -r chen@192.168.23.130:/home/chen/桌面/范例图片 E:\\A
19、目录结构
目录 | 目录说明 |
---|---|
/ | 根目录,最高一级目录,包含真个linux系统的所有目录和文件 |
/bin | 一种二进制文件目录,一般存放可执行的二进制文件 |
/boot | 存放系统启动是必须读取的文件,如系统内核、引导配置文件等 |
/dev | 存放外部设备文件的目录 |
/etc | 存放系统配置、管理文件 |
/home | 所有普通账户的主目录 |
/root | 管理员root账户的主目录 |
/lib | 存放系统共用的库文件 |
/mnt | 存放用户临时挂在的其他文件系统(eg:U盘) |
/opt | 存放系统运用程序的目录 |
/sbin | 超级用户指令系统管理命令 |
/tmp | 存放临时文件 |
/var | 存放一些经常发生变化的文件(eg:日志) |
/proc | 虚拟文件的目录、进程和系统信息 |
/lost+found | 当系统意外关机/崩溃而产生的一些文件碎片放在这里 |
20、Linux用户和组3个重要配置文件
配置文件 | 描述 |
---|---|
/etc/passwd | 用户文件,存储用户和密码的信息,对所有用户可读 |
/etc/shadow | 用户文件,存储用户和密码等信息,只有root可读 |
/etc/group | 用户组文件,使用组同时赋予多个用户相同的文件访问权限。一个用户可以同时属于多个组 |
21、网络管理配置文件
配置文件 | 描述 |
---|---|
/etc/sysconfig/network | 服务器上网络配置 |
/etc/hostname | 主机名和完整域名 |
/etc/hosts | IP和主机名映射,别名,解析主机域名文件 |
/etc/host.conf | 主机名解析顺序 |
/etc/resolv.conf | DNS服务器的配置文件 |
/etc/services | 服务名和端口号之间的映射 |
22、用户管理
useradd | 添加用户账号 |
groupadd | 添加组账户 |
nameserver | 表明DNS服务器的IP地址 |
domain | 声明主机的域名 |
search | 它的多个参数指明域名的查询顺序 |
sortlist | 允许将得到的域名结果进行特定的排序 |
以上是关于LINUX——Linux操作系统常用命令/常见文件篇的主要内容,如果未能解决你的问题,请参考以下文章