Açmadan önce arşivdeki dosyanın adını biliyor musunuz? Zip'i açmak /tmp
, düzenlemek ve yenilemek için bir işlev yapabilirsiniz :
zipedit(){
echo "Usage: zipedit archive.zip file.txt"
unzip "$1" "$2" -d /tmp
vi /tmp/$2 && zip -j --update "$1" "/tmp/$2"
}
Söylediği gibi kullanım:
zipedit myarchive.zip myfile.txt
Bu, adlandırılmış dosyayı arşivden çıkarır, kaydeder /tmp
, düzenler ve vi
sonra yolu "önemsiz bırakırken" arşive geri ekler. .Bash_profile hesabınıza ekleyin, varsayarak bash
...
DÜZENLEME: Aşağıda klasörün (yani kullanmak adına önce eğik çizgi kullanmayın, arşiv ... Not içindeki alt klasörler ile çalışan bir versiyonudur myfolder/file.txt
değil /myfolder/file.txt
). Arşivde olmayan bir dosyayı düzenlerseniz, sizin için yaratacaktır. Ayrıca zip dosyasının mutlak yoluyla çalışıp çalışmayacağından da emin değilsiniz. Akraba ile en iyi sopa.
zipedit(){
echo "Usage: zipedit archive.zip folder/file.txt"
curdir=$(pwd)
unzip "$1" "$2" -d /tmp
cd /tmp
vi "$2" && zip --update "$curdir/$1" "$2"
# remove this line to just keep overwriting files in /tmp
rm -f "$2" # or remove -f if you want to confirm
cd "$curdir"
}
Soru için teşekkürler. Muhtemelen bunu da kullanacağım!
Başka bir düzenleme: Denenmemiş, ancak bunu okudum vim
ve emacs
her ikisi de doğrudan jar dosyalarını düzenleyecek mi?