iT邦幫忙

0

Linux script - 如何判斷檔名與更換檔名

  • 分享至 

  • xImage

小弟目前需求是想寫一個簡單能切換檔名的script內容順序如下
問題2:這script開成777即是ROOT的意思還是要寫在裡面?

1:掃出當前目錄 /D/apps/usb/*
2:詢問需求版本

  • a usb_2018B
  • b usb_2021A.20
    3: 登入root --->必要或只要將此script賦予777即可?
    4:輸入A or B 去切換
    5:列完最後目錄
    6:離開
    #!/bin/bash
    #cd /D/apps/usb/*
    echo /D/apps/usb/*
    echo Please make sure your usb revision
    echo A usb_2018B
    echo B usb_2021A.20
    print " revison A or B:"
    if read A
    then
    mv usb usb_2021A.20 | mv usb_2018B usb
    else read B
    then
    mv usb_2018B usb | mv usb usb_2021A.20
    fi
    #cd /D/apps/usb/*
    echo /D/apps/usb/*
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 個回答

0
Samuel
iT邦好手 1 級 ‧ 2021-04-24 11:59:39

可在ls -l 時候 pipe
ls -l | grep "keyword"
然後file 屬寫可以去判別檔案類型

預設用root執行script當然是最保險的
但如果是要可讀可寫存取控制那就用chmod
還有你可能還要注意檔案隸屬的group
chown 也要注意

tony0330 iT邦新手 5 級 ‧ 2021-04-24 13:40:22 檢舉

ls -l | grep "keyword"
-->要給一個指定路徑嗎?不同檔名要怎定義一個確切的key word?

然後file 屬寫可以去判別檔案類型
-->不太懂這意思?

在if 裡做兩次mv 這樣寫可以嗎?
會想自己寫這個,是覺得這需求丟給資訊部可能會拖很久吧!?目前寫的都是趴文,有些寫法可能會有斷章取意,不成熟的感覺。

0
haward79
iT邦研究生 2 級 ‧ 2021-04-26 10:52:04

問題2 RESP>

以 root 身份執行應該會是比較好的選擇。
例如使用 sudo 。

將 script 本身的權限設為 777,僅僅是讓該 script 能夠被任何人讀取、修改和執行。
要設定權限的對象應該是被 mv 操作的檔案才對!

我要發表回答

立即登入回答