1. 程式人生 > >linux的sed命令詳解

linux的sed命令詳解

sed 's/[ ][ ]*/ /g'
如果空格與tab共存時用
sed -e 's/[[:space:]][[:space:]]*/ /g' filename

替換文件名中的空格
newfile=${oldfile// /_}
用 tr :
find . -type f -name "* *" -print |
while read name; do
na=$(echo $name | tr ' ' '_')
if [[ $name != $na ]]; then
mv "$name" $na
fi
done
修改 IFS
#!/bin/sh
[email protected] read name address
echo "A mail to $name at $address"
read subject
echo "Subject: $subject"
or
#!/bin/sh
IFS=:
for p in $PATH
do
if [ -x $p/$1 ]
then
echo $p/$1
return
fi
done
echo "No $1 in your path" 1 > &2
return 1
or
( IFS=: ; for D in $PATH; do for F in $D/*gif*; do [ -x $F ] && echo $F; done; done )
今天做了一個Shell程式,結果傳遞過來的檔名有些有空格,導致不能執行,找不到原檔案,急於解決先把檔名的空格都用下劃線都給替換掉,其實應該可以從程式上解決的,繼續看有什麼方法
以下是在網上找的替換空格檔案的指令碼
用 tr :
find . -type f -name "* *" -print |
while read name; do
na=$(echo $name | tr ' ' '_')

if [[ $name != $na ]]; then
mv "$name" $na
fi
done

相關推薦

tar命令

pan 詳解 time border 設備 lin bsp force names 解壓到指定目錄 tar -zxvf flash_player_npapi_linux.x86_64.tar.gz -C mmtar -zxvf flash_player_npapi_linu

Linux下安裝軟件命令

代碼包 相關信息 make bin 一個 軟件包 輸入 -i bin文件 Linux下軟件安裝方法總結:一、rpm包安裝方式步驟:1、找到相應的軟件包,比如soft.version.rpm,下載到本機某個目錄;2、打開一個終端,su -成root用戶;3、cd soft.v

Docker常用命令

nbsp 詳解 .cn 本地 test 並且 www 更多 top docker ps 查看當前正在運行的容器 docker ps -a 查看所有容器的狀態 docker start/stop id/name 啟動/停止某個容器 docker attach id 進

linux下cat命令

forever ron localhost root sta testing 幫助 查看 一點 1、cat 顯示文件連接文件內容的工具; cat 是一個文本文件查看和連接工具。查看一個文件的內容,用cat比較簡單,就是cat 後面直接接文件名。 比如: de>[[

Linux:at命令

計時 osi 執行 inux days pan 必須 man 一個 at命令 at命令為單一工作調度命令。at命令非常簡單,但是在指定時間上卻非常強大 語法 at [選項] time at > 執行的命令 ctrl+d 選項 -m :當指定的任務被

grep命令

命令詳解 顯示 不包含 文件 開頭 文件中查找 時間 匹配 nbsp grep命令 1、grep "li qq" * 在的有文件中查找li qq文件。 2、grep -c "file" a 在a文件中有多少行匹配到file。 3、grep -n "

linux 之awk命令

數學函數 mat loop 多次 finished 數組結構 save pre 新的 awk是一種程序語言,對文檔資料的處理具有很強的功能。awk名稱是由它三個最初設計者的姓氏的第一個字母而命名的: Alfred V. Aho、Peter J. We i n b e rg

【轉】linux之cp/scp命令+scp命令

特殊 是否 用戶登錄 usr 指定 highlight 顯示 檔案 三種 linux之cp/scp命令+scp命令詳解 名稱:cp 使用權限:所有使用者 使用方式: cp [options] source dest cp [options] source

xargs命令

文件名 過程 介紹 pri .sh 例如 接收 替換字符 welcom xargs命令是把接收到的數據重新格式化,再將其作為參數提供給其他命令,下面介紹xargs命令的各種使用技巧 一、將多行輸入轉換成單行輸入: [[email protected]/* */

Linux netstat命令,高級面試必備

bytes tool head osi ngs 進行 pen 通信 詳細信息 簡介 Netstat 命令用於顯示各種網絡相關信息,如網絡連接,路由表,接口狀態 (Interface Statistics),masquerade 連接,多播成員 (Multicast Mem

Linux下的tar壓縮壓縮命令

命令 .tar.gz 需要 logo 意思 追加 lin 產生 ron tar -c: 建立壓縮檔案-x:解壓-t:查看內容-r:向壓縮歸檔文件末尾追加文件-u:更新原壓縮包中的文件 這五個是獨立的命令,壓縮解壓都要用到其中一個,可以和別的命令連用但只

linux top 命令

ctrl+ 一次 所有 使用方法 ase 隱藏 統計 ini 前臺 top命令是Linux下常用的性能分析工具,能夠實時顯示系統中各個進程的資源占用狀況,類似於Windows的任務管理器。下面詳細介紹它的使用方法。top - 01:06:48 up 1:22, 1 user

Shell find命令

一個 打印 文件訪問 perm mtime -o 多次 所有者 cut 查找文件find ./ -type f查找目錄find ./ -type d查找名字為test的文件或目錄find ./ -name test查找名字符合正則表達式的文件,註意前面的‘.*’(查找到的文

Find命令整理

find命令詳解整理Findlocate 搜索命令 使用:#yum install -y mlocate 安裝updatedb 生成db數據庫,服務器不建議在工作時間生成,使用計劃任務在淩晨啟動 #find /etc/ -name ‘sshd*‘ 模糊搜索,搜索/etc目錄下name為sshd的

tcpdump命令--

tcpdump命令詳解tcpdump是工作中必用的一道指令,如果熟悉掌握,將會很快的幫你解決問題!文章寫的有點多,但是我認為都很有用!先看看tcpdump的具體參數及意義:-i:指定tcpdump監聽的網絡接口-s:指定要監聽數據包的長度-c:指定要監聽的數據包數量,達到指定數量後自動停止抓包-w:指定將監聽

紅冒系列-Systemctl命令說明

service linux start 如何 守護 Linux Systemctl是一個系統管理守護進程、工具和庫的集合,用於取代System V、service和chkconfig命令,初始進程主要負責控制systemd系統和服務管理器。通過Systemctl –help可以看到該命令主

linux之cp/scp命令+scp命令

... log 之間 一個 option pac 說明 sdn title linux之cp/scp命令+scp命令詳解 名稱:cp 使用權限:所有使用者 使用方式: cp [options] source dest cp [options] source... dir

JAVAC 命令

dir ati sof 運行 缺省 可靠 目錄樹 包括 ive 轉自:http://jeffchen.iteye.com/blog/395671 結構 javac [ options ] [ sourcefiles ] [ @files ] 參數可按任意次

【轉】linux awk命令

column 環境變量 最後一行 工作流程 初始 文本文件 for循環 其中 cti 簡介 awk是一個強大的文本分析工具,相對於grep的查找,sed的編輯,awk在其對數據分析並生成報告時,顯得尤為強大。簡單來說awk就是把文件逐行的讀入,以空格為默認分隔符將每行切

Linux ls命令

-c 目錄 輸出 限制 普通 排序 當前 ls -l sna ls 命令可以說是Linux下最常用的命令之一。 -a 列出目錄下的所有文件,包括以 . 開頭的隱含文件。(後有詳解)-b 把文件名中不可輸出的字符用反斜杠加字符編號(就象在c語言裏一樣)的形式列出。-c 輸出