Shell Scripts练习题

版权声明:感谢阅读,欢迎批评指正。 https://blog.csdn.net/skyejy/article/details/89817031

编写一个script, 创建目录/tmp/scripts, 切换工作目录到此目录中,复制你home下的某个目录到当前目录,并重命名为test,将test里的文件及其下的目录的其他用户权限改为没有任何权限。

#!/bin/bash
#创建目录/tmp/scripts, 切换工作目录到此目录中
echo "make new dir"
mkdir /tmp/scripts
echo "change work directory"
cd /tmp/scripts
pwd
echo "copy from home"
cp -r /home/xx/test000 newtest
echo "the work directory"
pwd
echo "ls -al"
cd /tmp/newmkdir/newtest
pwd
ls -al
echo "change rights"
sudo chmod -R 700 /tmp/newmkdir/newtest
ls -al

涉及的知识点:

1.文件权限

chmod 777 /home/user 注:仅把/home/user目录的权限设置为rwxrwxrwx

chmod -R 777 /home/user 注:表示将整个/home/user目录与其中的文件和子目录的权限都设置为rwxrwxrwx

chmod 用3个数字来表达对 用户(文件或目录的所有者),用户组(同组用户),其他用户 的权限:

  如:chmod 777 /test

  数字7是表达同时具有读,写,执行权限:读取--用数字4表示;

                      写入--用数字2表示;

                      执行--用数字1表示;

  按照规则,如你想设置/test目录的权限为:

    对用户可读可写:4(读取)+ 2(写入)= 6 ;

    对用户组可读可执行:4(读取)+ 1(执行)= 5 ;

    对其他用户仅可读:4(读取);

扫描二维码关注公众号,回复: 6117739 查看本文章

  这样就可以用命令:

    chmod 654 /test

几种常用权限实例:

  -rw------- (600) 只有所有者才有读和写的权限

  -rw-r--r-- (644) 只有所有者才有读和写的权限,组群和其他人只有读的权限

  -rwx------ (700) 只有所有者才有读,写,执行的权限

  -rwxr-xr-x (755) 只有所有者才有读,写,执行的权限,组群和其他人只有读和执行的权限

  -rwx--x--x (711) 只有所有者才有读,写,执行的权限,组群和其他人只有执行的权限

  -rw-rw-rw- (666) 每个人都有读写的权限

  -rwxrwxrwx (777) 每个人都有读写和执行的权限

感谢这篇博客:https://www.cnblogs.com/puloieswind/p/5845638.html

2.复制与重命名

假设复制源目录 为 dir1 ,目标目录为dir2。怎样才能将dir1下所有文件复制到dir2下?
如果dir2目录不存在,则可以直接使用
cp -r dir1 dir2

linux下重命名文件或文件夹的命令mv既可以重命名,又可以移动文件或文件夹.

例子:将目录A重命名为B

mv A B

例子:将/a目录移动到/b下,并重命名为c

mv /a /b/c

猜你喜欢

转载自blog.csdn.net/skyejy/article/details/89817031