Вы можете попробовать выключатель -W
теста
Utillity:
[ -w /path/to/file ] && do_command /path/to/file || sudo do_command /path/to/file
или длинная версия:
if [ -w /path/to/file ]; then
do_command /path/to/file
else
sudo do_command /path/to/file
fi
Из Manpage
-w FILE
FILE exists and write permission is granted
Q#1: Интерпретирующий вывод
Вывод кажется довольно простым. Это не блоки (или байты), а текущий блок и байтов.
. Between 1 and 1024 blocks successfully read.
[xx](+yy){
Current block and number of bytes continuously read successfully
up to this point.
X Read failed on a block with minimum blocksize and is skipped.
Unrecoverable error, destination file is padded with zeros. Data
is now skipped until end of the unreadable area is reached.
< Successful read after the end of a bad area causes backtracking
with smaller blocksizes to search for the first readable data.
}[xx](+yy)
current block and number of bytes of recent continuous unreadable
data.
Итак, чтобы расшифровать вывод примера:
.....
- это означает, что были успешно прочитаны от 1 до 1024 блоков. [12767109](+112394240)
- это количество блоков и байтов, которые были непрерывно прочитаны до этого момента. Блоки в квадратных скобках [12767109]
- это общее количество байтов в пареях, (+112394240)
. {X [12792709] X}
- чтение по блоку завершилось неудачно, 12792709, поэтому нечитаемые данные помещаются в место назначения нулями. 12818309](+209715200)
- блок и непрерывное число нечитаемых до этого момента байтов. Q#2:, что значит {X [12792709] X}, означает ли это, что только один блок (блок 12792709) был нечитаемым?
- такова моя интерпретация вывода и man-страницы.