El culpable es este:
# cat /etc/apt/sources.list.d/*
deb http://download.owncloud.org/download/repositories/stable/Debian_8.0/ /
El servidor de descarga ownCloud ahora redirige a la URL de TLS en todos los casos, rompiendo apt
como ha descubierto.
Para poder actualizar e instalar apt-transport-https
, debe deshabilitar temporalmente el repositorio ownCloud. Puede hacer esto cambiando el nombre del archivo apropiado para que tenga una extensión diferente a .list
o .sources
.
Вы можете сначала присвоить имя файла переменной:
f=test.tar.gz; tar xvf "$f"; rm "$f"
Или используйте специальный параметр$_
, он содержит последнее слово предыдущей команды, которое часто (, но, конечно, не всегда )имя файла, с которым вы работали:
tar xvf test.tar.gz; rm "$_"
Это также работает с несколькими командами, если имя файла всегда является последним аргументом для команд (, например. echo foo; echo $_; echo $_
печатает три раза foo
.)
Кроме того, вы можете рассмотреть возможность использования tar... && rm...
, то есть с оператором &&
вместо точки с запятой. Таким образом, rm
не запустится, если первая команда завершится ошибкой.
Вы можете использовать !$
, если переместите вторую команду на новую строку.
tar xvf test.tar.gz
rm !$
если вы когда-либо использовали цикл для обработки нескольких файлов, то вы уже использовали способ, который вы также можете использовать только для одного файла:
for i in a.tgz b.tgz c.tgz; do tar xvf $i; rm $i; done
для одного файла:
for i in a.tgz; do tar xvf $i; rm $i; done
Я нахожу это решение заслуживающим внимания, потому что этот цикл for является распространенным шаблоном, который вы, возможно, уже используете, но не подумали применить к этому вопросу. это не пришло мне в голову, когда я сначала думал об этом.
В версии bash
выше 4 можно использовать расширение истории для ссылки на n-й позиционный параметр текущей команды. Например, в tar xvf test.tar.gz
это второй позиционный параметр команды, поэтому команда может быть сокращена до
tar xvf test.tar.gz && rm !#:2
Другой, более портативный способ (, протестированный с /bin/dash
), заключается в использовании переменной $_
для ссылки на последний позиционный параметр:
tar xvf test.tar.gz && rm "$_"
См. также Как выполнить несколько команд, используя один и тот же аргумент?