Я пытаюсь выполнить замену переменной ZSH, но мне приходится делать это неубедительно, пропуская cut
. Возможно ли полностью выполнить эту операцию в ZSH?
i=./riak.logs.cloudstoragea08/2014-08-07T15:47:49.540310/console.log.2014-07-31-05
echo ${${i/\.\//}:s/\/*//}
riak.logs.cloudstoragea08/2014-08-07T15:47:49.540310/console.log.2014-07-31-05
echo ${${i/\.\//}}
riak.logs.cloudstoragea08/2014-08-07T15:47:49.540310/console.log.2014-07-31-05
echo ${echo ${i/\.\//} | cut -d/ -f 1}
zsh: bad substitution:
echo $(echo ${i/\.\//} | cut -d/ -f 1)
riak.logs.cloudstoragea08
i=./riak.logs.cloudstoragea08/2014-08-07T15:47:49.540310/console.log.2014-07-31-05
j=${i:2}
echo ${j%%/*}
Альтернативно:
expr $i : '\.\/\([^/]*\)/'