簡體   English   中英

Linux find -exec權限被拒絕

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM