- Extract
.tar.gz file:
tar xvzf ./file.tar.gz
- Extract only one subdirectory and all its sub-content:
tar -xvzf my-archive.tar.gz --wildcards "./directory/subdirectory*"
- Extract all
.gz files in the current folder:
gunzip ./*.gz
- Extract
.tar.bz2 file:
tar xvjf ./file.tar.bz2
- Create a
.zip archive of current directory, including all sub-dirs:
zip -r archive.zip ./*
- Create a 7-Zip archive (thanks to
p7zip) of a folder, including all sub-directories:
7za a archive.7z ./folder
- Do the same as above, but split the archive in 50 Mib volumes:
7za a -v50m archive.7z ./folder
- Convert
.tar.gz file to .tar.bz2 file:
gzip -dc archive.tar.gz | bzip2 > archive.tar.bz2
- Case insensitive search from the current folder of all files that have the string
dummy in their filename:
find ./ -iname "*dummy*"
- Recursive and case insensitive content search on non-binary files from the current folder:
grep -RiI "string to search" ./*
- Get the list of the latest 10 modified files in the current folder tree:
find ./ -printf "%TY-%Tm-%Td %TT %p\n" | sort | tail -n10
- Same as above but sorted by latest access time:
find ./ -printf "%AY-%Am-%Ad %AT %p\n" | sort | tail -n10
- Rename all mp3 files in the current folder by adding a “sub-extension”:
rename "s/\.mp3/\.my-sub-extension\.mp3/g" *.mp3
- Convert all files in the current folder to lower case:
rename 'y/A-Z/a-z/' *
Presumably because of directory structures similar to:
folder1andfolder2will be deleted on the first pass, leaving/path/to/empty. Asfinddescends into each directory structure,/path/to/emptywill be found to be non-empty on the first run, and empty on the second.