【shell】shell命令大全

文件权限管理

文件或者目录的权限包括读(r)写(w)执行(x)

1. 改变特定用户的权限   

sudo chmod u+x ./文件 (所属用户)
sudo chmod go=wx  目录 (同用户组用户+其他用户组用户)
sudo chmod a-x 文件 (所有用户)

2. 通过数字改变所有用户的权限 

sudo chmod 777 文件 
#*777 = 111111111

在复制文件给其他用户的时候,可能需要的两个功能是改变其所属用户所属用户组,因为复制文件的时候文件属性也会被一并复制,所以其他用户对该文件的访问权限就需要手动设置!

改变文件所属用户

sudo chown user1 file1
sudo chown root:root file2

改变文件所属用户组

chgrp testgroup file1

ls -a file1
#-********* root testgroup ******** file1

创建软链接

ln -s /usr/local/python3.6/bin/python3.6 /usr/bin/python

#python命令将直接链接到python3.6软件

压缩文件处理

#解压tar.bz2文件
tar -jxvf *****.tar.bz2

#解压tar.gz文件
tar -zxvf *****.tar.gz

安装deb文件

sudo apt install -f
sudo dpkg -i '/**/**/**********.deb'
#/**/**/**********.deb 文件完整路径

查看

#查看文件夹下文件详细信息
ls -al 目录

文件的访问属性包括文件类型、当前用户访问权限、同用户组用户的访问权限、其他用户组的用户访问权限。

[文件类型]
d:目录

-:文件

l:链接

b:存储设备

c:串行端口设备

#查看文件的完整更改时间,有些文件的更改时间距离当前太远,会选择只显示日期不显示时分秒,如果想手动查看具体的更改时间则用命令
ls -l --full-time 目录

nano

[文本编辑器]
nano是一种可以代替vim的文本编辑器

查看内核版本 

#查看当前的Linux内核版本
uname -r

#查看当前Distribution的信息
lsb_release -a

目录跳转

cd  ..  #当前目录的父目录
cd  -   #前一个访问的目录
cd  ~   #当前用户的home目录

查询当前目录路径

$pwd      #当前目录的链接
$pwd   -P #当前目录的绝对路径

创建目录

mkdir  dir

mkdir -m 777 dir1    #创建目录的同时给其赋权限

mkdir -p   dir1/subdir1/subdir2    #创建多层目录

删除目录

rmdir  目录

权限和指令

在不同的应用场景下,用户对文件或者目录需要不同级别的权限,分以下几种场景讨论:

【用户能进入目录】

想要cd跳转到该目录,则用户对该目录最小应具备x权限!

【用户能读取目录】

想要ls查看目录的内容,则用户对该目录最小应具备r和x权限!

【用户能显示目录下的文件】

想要通过cat、more、less显示目录下的文件内容,则用户对该目录最小需要x权限,对该文件最小需要r权限!

【用户能修改目录下的文件】

想要通过vi或者nano修改文件内容,则用户对目录最小需要x权限,对该文件最小需要r和w权限!

【用户能在目录中创建新文件】

想要通过touch或mkdir来创建新文件,则用户对该目录最小需要w和x权限!

【用户能执行目录下的命令文件】

想要执行属于某目录的命令,则用户对该目录最小需要x权限,对文件最小需要x权限!

查看软件版本

#软件名 --version 或者 软件名 -V
python -V 或者 python --version

复制文件

#保证file1和file2的访问权限是一样的
cp -a  file1 file2  
  
#覆盖复制的时候询问用户是否确认
cp -i file1 file2

#保证目录的复制
cp -r dir1 dir2  

#实体链接
cp -l file1 file2

#符号链接,访问权限和更改信息有可能被改变
cp -s file1 file2

#将链接文件复制成普通文件
cp linkfile1 file2

#复制链接而非文件
cp -d linkfile1 linkfile2

#保证两个文件在不同的情况下才进行复制
cp -u file1 file2

命令别称

例:清屏的命令clear经常被用到,所以希望这个命令尽量被短小的"别名"代替

#此时清屏命令就有了一个别名c!
alias c="clear"

切换用户

#切换到root
sudo su

#切换到user1
su user1

文件压缩

文件压缩原理:将二进制文件中的填空的bit去掉,使得文件的大小尽量压缩。

【gzip压缩】

-v 显示压缩信息

-d 解压缩

 

【bzip2压缩】

-v 显示压缩信息

-d 解压缩

 

【tar打包】

#将文件打包成.tar.bz2文件
tar -jcvf filename 

#将文件.tar.bz2解包
tar -jxvf filename 

#将文件打包成.tar.gz文件
tar -zcvf filename 

#将文件.tar.gz解包
tar -zxvf filename

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值