...
xargs
Here is a really straightforward example of using xargs,
- -t will show you what xargs is about to execute before it executes it.
- -n1 limits the arguments passed by the directory to pass one argument, in this case one file name at a time.
Code Block |
---|
Tin-Phams-iMac:PC tinpham$ ls | xargs -t -n1 md5
md5 planetary.doc
MD5 (bash) = ab5970d50d67bcafe5c554387f76534e
md5 Superman.jpg
MD5 (cat) = cdefa50d737dfcf8dc57886ea1a758c4
Tin-Phams-iMac:bin tinpham$
{code}
h2. Find
find \[folder\] \ |
Find
Try to memorize this command,
Code Block | ||
---|---|---|
| ||
find [folder] -type f \| xargs \-I {} grep \-li "text" {} \| xargs perl \-pi \-e 's/abc/def/g' find \[folder\] \-type f {search the specified folder for all files, returns full path of each file} \ | xargs \-I {} grep \-li "\[text\]" {} {piped into xargs to grep for all files containing specified text ignoring case} \ | xargs perl \-pi \-e 's/\[text_to_search_for\]/\[text_to_replace_with\]/g' {pipe list of files and search/replace with specified text} |