feat(fish): Add extract()
This commit is contained in:
parent
ffb1d56723
commit
f3c7582486
1 changed files with 65 additions and 19 deletions
|
@ -2,6 +2,13 @@
|
||||||
{
|
{
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
babelfish
|
babelfish
|
||||||
|
gnutar
|
||||||
|
bzip2
|
||||||
|
bzip3
|
||||||
|
gzip
|
||||||
|
unzip
|
||||||
|
pax
|
||||||
|
unrar-free
|
||||||
];
|
];
|
||||||
|
|
||||||
programs.fish = {
|
programs.fish = {
|
||||||
|
@ -36,29 +43,68 @@
|
||||||
'';
|
'';
|
||||||
|
|
||||||
shellAbbrs = {
|
shellAbbrs = {
|
||||||
cp = {
|
cp = "cp -iv";
|
||||||
position = "command";
|
mkdir = "mkdir -pv";
|
||||||
expansion = "cp -iv";
|
mv = "mv -iv";
|
||||||
};
|
rm = "rm -r";
|
||||||
|
grep = "grep --color=auto";
|
||||||
|
};
|
||||||
|
|
||||||
mkdir = {
|
functions = {
|
||||||
position = "command";
|
extract = {
|
||||||
expansion = "mkdir -pv";
|
argumentNames = "file";
|
||||||
};
|
body = # fish
|
||||||
|
''
|
||||||
|
set --erase argv[1]
|
||||||
|
|
||||||
mv = {
|
if test -f "$file"
|
||||||
position = "command";
|
switch "$file"
|
||||||
expansion = "mv -iv";
|
case "*.tar.bz2"
|
||||||
};
|
tar -jxvf $argv $file
|
||||||
|
|
||||||
rm = {
|
case "*.tar.gz"
|
||||||
position = "command";
|
tar -zxvf $argv $file
|
||||||
expansion = "rm -r";
|
|
||||||
};
|
|
||||||
|
|
||||||
grep = {
|
case "*.bz2"
|
||||||
position = "command";
|
bunzip2 $argv $file
|
||||||
expansion = "grep --color=auto";
|
|
||||||
|
case "*.bz3"
|
||||||
|
bunzip3 $argv $file
|
||||||
|
|
||||||
|
case "*.gz"
|
||||||
|
gunzip $argv $file
|
||||||
|
|
||||||
|
case "*.tar"
|
||||||
|
tar -xvf $argv $file
|
||||||
|
|
||||||
|
case "*.tbz2"
|
||||||
|
tar -jxvf $argv $file
|
||||||
|
|
||||||
|
case "*.tgz"
|
||||||
|
tar -zxvf $argv $file
|
||||||
|
|
||||||
|
case "*.zip" "*.ZIP"
|
||||||
|
unzip $argv $file
|
||||||
|
|
||||||
|
case "*pax"
|
||||||
|
cat $file | pax -r $argv
|
||||||
|
|
||||||
|
case "*.pax.Z"
|
||||||
|
uncompress $file --stdout | pax -r $argv
|
||||||
|
|
||||||
|
case "*.rar"
|
||||||
|
unrar-free $file
|
||||||
|
|
||||||
|
case "*.Z"
|
||||||
|
uncompress $argv $file
|
||||||
|
|
||||||
|
case "*"
|
||||||
|
echo "'$file' cannot be extracted via extract()."
|
||||||
|
end
|
||||||
|
else
|
||||||
|
echo "'$file' is not a valid file."
|
||||||
|
end
|
||||||
|
'';
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in a new issue