[英]Linux find -exec permission denied
我編寫了一個Shell腳本來遍歷文件並對其內容進行排序,然后將新命令保存回文件中。
#!/bin/sh
for i in "$@"; do
sort $i -k2 -o $i
done
使用find
命令選擇要排序的文件,如下所示:
find . -regex '<myregex>' -exec ./mysort.sh {} +
我編寫了腳本,並以特定用戶的身份在一台計算機上進行了嘗試,然后使用root特權將其復制到另一台計算機上。 因此,現在文件具有chown root:root
以及我想要搜索的所有文件。
因此,現在要排序的文件位於與mysort.sh相同的文件夾中,當我嘗試使用-exec執行查找時,我得到了
find: './mysort.sh': Permission denied
我嘗試將腳本移至子文件夾,然后使用-exec ./folder/mysort.sh
執行命令,或者將其移至更高級別的文件夾,然后使用-exec ../mysort.sh
執行它。 我總是會得到不同的“權限被拒絕”錯誤。
檢查文件系統是否已使用noexec
標志掛載。
但是您仍然可以通過bash
運行腳本:
bash /path/to/mysort.sh
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.