前言:
在Linux系统中查看文件或目录权限时,会看到类似"-rwxrwxrwx(共有10位)"这样重复多个权限标志的情况。
这是因为Linux区分了3类用户的文件访问权限,导致权限标志重复出现。
其中第一位是表示这个文件是什么类型:
- 代表普通文件
- d 代表目录
- l 代表符号链接文件(符号链接文件自己并不包含数据,只指向另一个文件)
- b 代表块设备文件(系统的设备特征)
- c 代表字符设备文件(字符型的硬件设备,写入读取流)
- p 代表管道文件 (它通常用于进程间通信。管道文件可以把一个进程的输出连接到另一个进程的输入)
- s 代表套接字文件(一种用于进程间通信的特殊文件。它与网络套接字有点类似,允许不同进程或甚至不同机器之间通过文件接口进行信息交换)
-rwxrwxrwx:这个是普通文件对于三种类型的用户的权限:
这是因为Linux区分了3类用户的文件访问权限,导致权限标志重复出现,
1 后面重复3段,每段3个字符,表示3类用户的读、写、执行权限:
- 第一个段:文件所有者的权限
- 第二个段:文件所属组用户的权限
- 第三个段:其他用户的权限
2 可以通过id查看自己的用户组权限
cd :切换目录
用法:cd
cd ../ 切换到上级目录
cd / 切换到根目录
cd ~ (或只有cd )切换到当前用户主目录(home底下以用户名命名的文件夹) /root目录
mkdir 创建目录(make directory)
mkdir 目录名 -p 递归创建目录
用法:rmdir 目录名(remove directory)
也可用:rm -rf 目录名
主要选项:
ls -l 详细列出文件信息 ls -la 列出所有文件及详情(包括隐藏文件) ls -lS 根据大小排序列出文件 ls -lrt 按修改时间反向排序列出文件
1. 第一列的值"0"表示该文件/目录的inode节点号。
2. 第二列的值如"drwxr-xr-x"表示文件类型及权限。其中d表示目录,rwx表示所有者权限,r-x表示群组权限,r-x表示其他用户权限。
3. 第三列的值如"3"表示硬链接数。
4. 第四、五列的值如"root root"分别表示文件所有者和所属组。
5. 第六列的值如"23"表示文件大小,对目录来说是目录包含的文件个数。
6. 第七、八列的值如"7月 11 17:04"表示文件最后修改时间。
7. 最后一列如"home"表示文件名。
键入i 进入编辑状态
退出编辑按ESC键
不保存退出: :q!
保存退出: :wq
输入/,进入搜索
输入:set nu,显示每一行的行数
按键盘G,可以直接定位到最末尾
用法:cp [选项]文件名或目录 目标地址
-R 拷贝目录及目录下所有目录和文件
cp a.txt b.txt 将a文件复制,且另命名为b文件(目录名)
用法:mv 文件名或目录 目标目录
mv a.txt ../ 将a文件移动到上级目录(将一个文件移动到另一个目录没有重命名)
mv a.txt ../b.txt 将a文件移动到上一级并改名为b文件(将一个文件移动到另一个目录并重命名)
-f 强制删除
-r 删除目录
常用:rm -rf 文件或目录
用法:find [路径] [选项]
常用选项有:
find . -name *.log 在当前目录查找以.log结尾的文件
find / -name log 在根目录查找log命名的目录
在指定文件中查找字符(串)并打印该行
用法:grep 字符串 文件名
grep band file 在file文件中找寻band字符串
用法:cat 文件名 cat 文件名字
用法: head -n 5 文件名
tail -n 5 文件名 查看后几行
tail -f error.log 不断刷新,看到最新内容
-ef 显示所有运行进程,并显示启动进程的命令
netstat -apn 查看所有端口
an,按一定顺序排列输出
p,表示显示哪个进程在调用
在命令之间建立管道,将前面命令的输出作为后面命令的输入
通过命令查找tomcat进程:ps -ef | grep tomcat
通过命令查找到占用此端口的进程编号:netstat -apn|grep 8080
常用选项有:
-n 不换行输出
-e 可以使用转义字符(\n回车,\t tab键)
示例:
echo “I am studying linux”>>xujun.txt 追加文件尾部内容
echo $? 假如返回值为0的时候,表示上一次命令成功。假如是1到255的话,则是失败
echo -e “wo\tshi\tshei”> xujun.txt
-a 修改access(访问)时间
-m 修改modify(修改)时间这两个参数了解即可
-m 查看系统是几位操作系统
-r 查看系统的内核版本
-a 查看详细的系统内核版本和系统的操作系统
假如系统里面没有这个命令,则使用yum install lrzsz 安装
-y 覆盖
直接输入rz,就可以上传文件
假如系统里面没有这个命令,则使用yum install lrzsz 安装
-y 覆盖
sz -y test.txt
su root
-R 递归改变目录下所有子目录和文件的权限
数字方式:r=4 w=2 x=1
chmod 777 lemon
tar -czvf test.tar.gz test
将test文件夹压缩成test.tar.gz
tar -xzvf test.tar.gz
将test.tar.gz解压得到test文件夹
zip –r test.zip test
将test文件夹压缩成test.zip,必须带r 才会把文件压缩进去,不然会生成一个空的文件夹
unzip test.zip
将test.zip文件夹解压
开启:service iptables start
关闭:service iptables stop
永久关闭防火墙
开启:chkconfig iptables on
关闭:chkconfig iptables off
PS:柠檬班整理了一套150个Linux基础命令,需要的童鞋在评论区留言~