КАК сделать систему Linux похожей на USB-накопитель

С zshи при условии, что последняя командная строка была только одной командой или конвейером или и -или списком (, то есть, например, echo x, echo x | tr x y, echo x && echo y, даже составными командами, такими как { x; y; }или for/whileпетли, но неecho x; echo y):

repeat 30 !!

Чтобы повторить предыдущую командную строку, даже если она содержала несколько команд, используйте:

repeat 30 do !!; done

Или:

repeat 30 {!!}

С bashи для простых -команд только (среди приведенных выше примеров, только для случая echo x), вы можете определить вспомогательную функцию, например:

repeat() {
  local n="$1"
  shift
  while ((n-- > 0)); do
    "$@"
  done
}

(и используйте repeat 30 !!, как указано выше ). Побочным эффектом является то, что, поскольку код будет выполняться в функции, он увидит разные "$@", "$#"и такие вещи, как typeset, будут работать по-другому, поэтому вы не сможете делать такие вещи, как:

eval 'echo "$1"'
repeat 30 !!

Другой подход к эмуляции zsh's repeat 30 {!!}состоит в том, чтобы объявить псевдоним, например:

alias repeat='for i in $(seq'

(при немодифицированном$IFS)

Затем используйте:

repeat 30); { !!; }
0
12.04.2018, 07:50
1 ответ

Если USB-оборудование вашего NAS поддерживает работу в режиме USB-клиента, вы можете использовать Linux -USB Gadget API Framework(или что-то на его основе ).

0
28.01.2020, 02:32

Теги

Похожие вопросы