chownsangat bagus jika Anda adalah pengguna super. Saya mempunyai masalah ketika orang lain menjalankannya makedi direktori saya, dan sekarang memiliki beberapa file yang tidak dapat saya modifikasi. Ini solusi saya yang menangani file dan direktori, meskipun ia meninggalkan direktori dengan sufiks .mkmeownerjika tidak bisa menghapusnya.
- Skrip berikut mengubah kepemilikan file dan direktori yang diteruskan untuk dimiliki oleh pengguna saat ini, berusaha untuk mengatasi masalah izin dengan membuat salinan baru dari setiap direktori atau file yang tidak dimiliki oleh pengguna saat ini, menghapus (atau mencoba menghapus) file asli, dan mengganti nama dengan tepat.
- Maksudnya adalah singkatan untuk "make me owner". Saya tidak menggunakan garis bawah karena mereka sulit diketik.
Contoh:
% mkmeowner .
% mkmeowner dirpath1 dirpath2
- Ini membutuhkan skrip berikut
mkmeowneroneuntuk berada di jalur Anda.
mkmeowner:
#!/bin/bash
[ "x$1" == "x-h" ] || [ "x$1" == "x--help" ] && cat << END && exit 0
Usage: $0 dirorfile [direorfile2 ...]:
change ownership of directories or files to current user.
Current user must have permissions to read those and write to owner directory.
END
mkmeownerone=`which mkmeownerone`
for d in $*; do
find "$d" -not -user `whoami` -exec $mkmeownerone {} \;
done
mkmeownerone:
#!/bin/bash
# change ownership of one file or directory
f="$1"
expr match "${f}" '.*\.mkmeowner$' > /dev/null && exit 1 # already tried to do this one
if mv -f "$f" "${f}.mkmeowner"; then
cp -pr "${f}.mkmeowner" "$f" && rm -rf "${f}.mkmeowner"
exit 0
fi
exit 1
man chowndanman chmoddengan mudah menjawab pertanyaan Anda.