Qter 发表于 2020-1-1 14:09:54

shell

使用较广的shell有标准的Bourne shell (sh)、Korn Shell(ksh)、C shell (csh)、Bourne Again Shell(bash)等。
查看当前环境所用shell:echo $SHELL
Linux黑洞 : /dev/null
*用户管理
? 新建用户(user add)
   useradd UserName
         新建用户后,会在/home目录下建立一个以UserName命名的文件夹,用户每次登录时自动定位到该文件夹下。
? 为用户添加密码(password)
   passwd UserName
? 删除用户(user delete)
      userdel UserName
       使用–p选项可以删除用户目录下的文件及与用户相关联的其他文件。
? 新建组群(group add)   
   groupadd GroupName
? 删除组群(group delete)
   groupdel GroupName
? 用户身份
   whoami   
? 查看登录用户
   who [选项]
             -a 显示所有用户的所有信息
       -H 显示列标题
? 查看用户的操作
   w      某一时刻用户的行为
? 用户间切换(substitute user)
   su UserName 如:su 或su root 切换为根用户
                  su Haison 切换为名为Haison的用户
*目录管理
? 创建目录(make directory)
   mkdir DirecName
? 删除目录(remove directory)
   rmdir DirecName
? 显示工作目录(print working directory)
   pwd
? 显示目录内容(list)
      ls [选项]
   选项:-a 显示当前目录下的所有文件,包括以.开头的文件。
      -l 以长列表的形式显示文件列表,如:
         -rw-r--r-- 1 haison haison 18 Nov 2 10:10 haison.c
? 改变当前目录(change directory)
   cd 或 cd ~ 进入登录时的主目录
   cd/       进入根目录
   cd..       进入上一级目录
   cd/home   进入系统的home目录
   cdhome    进入当前目录下的home目录
? 目录重命名(move)
   mv SourceDirecName TargetDirecName
? 目录拷贝(copy)
   cp SourceDirec TargetDirec
      -r 拷贝目录下的文件、子目录及子目录下的文件
*文件管理
? 新建文件
    >FileName 或 touch FileName 或 vi FileName
? 删除文件(remove file)
   rm [选项] FileName
   选项:-i 系统提示是否真要删除该文件
         -f 删除文件之前不提示任何确认信息
         -r 递归删除目录下所有子目录的内容
? 文件拷贝(copy)
   cp SourceFile TargetFile
? 文件链接(link)
      ln –sSourceFile TargetFile
   创建文件链接,用ls –l查看,会看到TargetFile->SourceFile
? 显示文件内容
      more FileName 一次一屏的显示文件内容,空格或回车显示下一屏
      less FileName 一次一屏的显示文件内容,空格或回车显示下一屏
      cat FileName    一次全部显示文件的内容
      cat file1 file2>file3 将file1、file2的内容写到file3,覆盖file3原内容
      cat file1>>file2 将file1的内容追加到file2,file2原内容不变
      head FileName 只显示文件的前10行
      head –n FileName 显示文件的前n行
      tail FileName   只显示文件的后10行
      tail –n FileName 显示文件的后n行
      nl FileName   以编号的形式一次全部显示文件的内容,忽略空格
? 文件移动/重命名(move)
   mv SourceFile TargetFile 将一个或多个文件移动到另外一个目录下,或者将一个文件重命名为另一个文件。
? 文件查找(find)
   find [路径] [选项]
   如:find / -name “Linux” -print
? 文件内容查找(grep)
   如:grep “main” haison.c
? 文件类型
   命令ls –l以长列表形式显示文件的类型等,如:-rw-r--r--
参考:文件类型.png

*权限管理
? 文件访问权限
   一个文件一经创建,就具有三种访问方式   
   参考:文件访问权限.png
? 改变文件/目录的权限(change mode)
        chmod [+/-/=] [权限] FileName/DirecName
参考:change mode.png
? 改变文件/目录的属主(change owner)
   chown Owner FileName/DirecName
   如:chown Dave haison.c
? 改变文件/目录的属组(change group)
    chgrp Group FileName/DirecName
   如:chgrp Dave haison.c
? 改变文件/目录的属主和属组
    chown owner:group FileName/DirecName
   如:chown Dave:Dave haison.c
////变量篇///////
? 变量可以定制用户本身的工作环境,使用变量可以保存有用信息,使系统获知用户相关设置,也用于保存暂时信息。
? 变量一般都用大写字母表示
? 使用 echo命令可以显示单个变量的取值,要在变量名前面加$
      如:USER=“haison”
            echo $USER
? 如果设置变量时,不想再改变其值,可以将其设置为只读,只要在变量名前加readonly
? 使用set命令可以显示所有本地定义的shell变量
? 使用 unset 变量名 可以清除对变量的定义




页: [1]
查看完整版本: shell