mirror of
https://github.com/fish-shell/fish-shell
synced 2025-01-12 04:58:57 +00:00
Port linux __fish_print_mounted to string
This adds a few escape sequences, but two out of the three are theoretical and will fail a bit later.
This commit is contained in:
parent
482cfca84f
commit
fb1a7d9d73
1 changed files with 5 additions and 1 deletions
|
@ -2,7 +2,11 @@ function __fish_print_mounted --description 'Print mounted devices'
|
|||
if test -r /etc/mtab
|
||||
# In mtab, spaces are replaced by a literal '\040'
|
||||
# So it's safe to get the second "field" and then replace it
|
||||
sed -e "s/[^ ]\+ \([^ ]\+\) .*/\\1/" -e "s/\\040/ /g" /etc/mtab
|
||||
# \011 encodes a tab, \012 encodes a newline and \\ encodes a backslash
|
||||
# This will probably break on newlines because of our splitting, though
|
||||
# and tabs because of descriptions
|
||||
string replace -r '\S+ (\S+) .*' '$1' </etc/mtab | string replace -a "\040" " " \
|
||||
| string replace -a "\011" \t | string replace -a "\012" \n | string replace -a "\\\\" "\\"
|
||||
else
|
||||
mount | cut -d " " -f 1-3|tr " " \n|sed -e "s/[0-9\.]*:\//\//"| __fish_sgrep "^/"
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue