shell文件及目录常用操作汇总

  • 提取路径的目录和文件名
    目录:

    dirname $path
    

    文件名:

    basename $path
    
  • 批量重命名带有空格文件

    function processFilePathWithSpace(){ 
     find $1 -name "* *" | while read line
     do 
     newFile=`echo $line | sed 's/[ ][ ]*/_/g'`
     mv "$line" $newFile
    logInfo "mv $line $newFile $?"
     done
    } 
    
  • 遍历文件内容

    cat /tmp/text.txt | while read line
    do
    	echo $line
    done
    
  • 文件不存在,则创建文件

    [ -f $logFile ] || touch $logFile
    
  • 递归遍历目录

    function getFile(){
    	for file in `ls $1`
    	do
    		element=$1"/"$file
        	if [ -d $element ]
    		then 
            	getFile $element
        	else
            	echo $element
        	fi  
    	done
    }
    
  • 清空文件内容

    cat /dev/null > $filePath
    

你可能感兴趣的:(Shell)