一些linux命令操作理解

        

1、返回上一级目录

cd..

2、

#!/bin/bash

linux上的shell 是bash shell ,咱们在编写一个脚本的时候须要在第一行添加”#!/bin/bash“. 这句话的意思是告诉执行器须要调用/bin/bash来执行我,否则执行结果就可能存在语法不兼容的问题,致使结果异常或者根本不能执行。

3、mkdir:make directory的缩写,Linux中 mkdir 命令用来在指定位置创建指定名称的文件夹或目录

mkdir [权限] 目录名

用户在创建文件夹或 目录时,该用户必须对所创建的文件夹的父文件夹具有写权限,并且所创建的文件夹(目录)不能与其父文件夹(父目录)重名,即同一个目录下不能有同名的(区分大小写)。还可以设置目录的权限。

文件或目录的权限又分为3种:只读、只写、可执行。

 

 

 

4、

cd"$( dirname"${BASH_SOURCE[0]}")

这个语句的作用是获取shell脚本所在目录的绝对路径,然后切换到 脚本 所在的目录。

在linux中,dirname命令可以返回文件所在的目录。$0表示Shell本身的文件名。

注意:dirname的功能是去掉文件路径名中的从右往左数的第一个/及其之后的所有文字

 

  • BASH_SOURCE[0] - 等价于 BASH_SOURCE ,取得当前执行的 shell 文件所在的路径及文件名
  • $( dirname “$0“ ) 不推荐使用$( dirname “$0“ ) 不推荐使用,${BASH_SOURCE[0] 推荐使用

$() 和 ${}:

参考:Shell脚本中$符号的几种用法小结_linux shell_脚本之家

          理解$0和BASH_SOURCE | 骏马金龙

          Shell中获取当前脚本的绝对路径: $( cd “$( dirname “${BASH_SOURCE[0]}“ )“ && pwd)-CSDN博客

  • $() - 相当于 command, 即获取command命令的结果
  • 一般情况下,$var与${var}是没有区别的,但是用${ }会比较精确的界定变量名称的范围
  • && - 逻辑运算符号,只有当&&左边运行成功时才会运行&&右边的命令
  • 获取当前进程 ID:echo $$

 

SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )

如果第一条语句顺利执行,就执行pwd显示当前目录,并将结果赋值给变量“SCRIPT_DIR”。 

该命令获取脚本源文件的文件路径名,获取其目录部分,然后 cd 到该目录,使用 pwd 获取当前目录的完整路径,然后将这个路径的值赋给变量 “SCRIPT_DIR”。 

  • 其中的而&> file是一种特殊的用法,也可以写成>& file,二者的意思完全相同,&>或者>&视作整体,分开没有单独的含义;
  • /dev/null 文件
    • 如果希望执行某个命令,但又不希望在屏幕上显示输出结果,那么可以将输出重定向到 /dev/null;

    • $ command > /dev/null

      /dev/null 是一个特殊的文件,写入到它的内容都会被丢弃;如果尝试从该文件读取内容,那么什么也读不到。但是 /dev/null 文件非常有用,将命令的输出重定向到它,会起到"禁止输出"的效果。

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值