Finder menyembunyikan file tertentu dengan nama

0

Pada suatu waktu MBA 10.8 Finder saya memutuskan (atau apakah saya) untuk menyembunyikan file tertentu dari saya.

Berikut ini contohnya (Saya punya beberapa file lain seperti itu)

.. Kuda Air.flv

Nama file

Awalnya file-file itu diunduh dari web di Firefox menggunakan add-on bernama Ant.com.

Saya masih bisa melihat file di VLC player, atau di OminDiskSweeper.

Saya juga bisa melihat file menggunakan show hidden file di Terminal.

defaults write com.apple.finder AppleShowAllFiles TRUE && killall Finder

Dulu tidak begitu, tetapi sesuatu berubah, atau saya berubah tanpa mengetahui.

Investigasi saya menunjukkan itu ada hubungannya dengan awal nama file (..) yang tidak lagi bergaris-garis oleh program unduhan.

Jika saya menghapus awal nama file itu akan kembali normal, tetapi sayangnya file tersebut dinamai seperti itu awalnya di situs web.

Jadi saya mencoba proses pembalikan dengan menambahkan titik di depan dan itu memberitahu saya saya tidak boleh melakukan itu. Bagaimana saya memberi tahu OS saya untuk menampilkan file-file itu di Finder dengan nama itu atau bagaimana cara menghapus awal nama file selama atau setelah proses pengunduhan, atau saya terjebak dengan tampilkan semua file yang tersembunyi.

Menggunakan titik di awal nama file

Apakah ada cara untuk mengubah nama file sebelum atau selama atau setelah mengunduh, jadi saya tidak harus menggunakan Terminal setiap kali untuk menyembunyikan semua file lalu sembunyikan lagi.

Ruskes
sumber
1
Jangan pahami pertanyaan yang sudah Anda sembunyikan dan sembunyikan (dengan benar). Biasanya Anda tidak harus mengutak-atik file tersembunyi melalui finder sekalipun .. setelah menghapus titik membalikkan perintah terminal untuk menyembunyikan file tersembunyi lagi dan melakukan penggantian nama normal di FInder
Joop
@ Joong itulah pertanyaannya. Setiap kali saya mengunduh file seperti itu (setiap hari) saya harus menyembunyikan, mengganti nama, dan menyembunyikan lagi.
Ruskes

Jawaban:

4

File atau folder apa pun yang dimulai dengan '.' akan disembunyikan di Finder. Itu selalu benar, kembali ke zaman NeXTStep.

Jika apa yang Anda coba lakukan adalah secara otomatis mengganti nama file yang dimulai dengan '.' untuk tidak memulai dengan '.' yang dapat dengan mudah dilakukan dengan skrip shell. Simpan yang berikut ini sebagai /usr/local/bin/rename-dot-files.sh:

#!/bin/zsh -f

DIR="$HOME/Downloads/"

cd "$DIR"

ls -1Ad \.* | egrep -v '.DS_Store|.localized' | while read line
do

        NEWNAME=$(echo "$line" | sed 's#^\.##g')

        /bin/mv -vn "$line" "$NEWNAME"

done

exit 0

Script itu akan mencari $HOME/Downloads/file yang dimulai dengan a. (tidak termasuk .DS_Store dan .localized yang tidak ingin Anda ganti namanya) dan akan mengganti namanya menjadi nama yang sama, tanpa tanda '.' selama tidak ada file / folder lain dengan nama yang sama.

Untuk melakukan ini secara otomatis, Anda perlu membuat launchdplist yang akan diluncurkan secara otomatis kapan saja direktori berubah:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Disabled</key>
    <false/>
    <key>Label</key>
    <string>com.tjluoma.rename-dot-files</string>
    <key>Program</key>
    <string>/usr/local/bin/rename-dot-files.sh</string>
    <key>RunAtLoad</key>
    <true/>
    <key>WatchPaths</key>
    <array>
        <string>/Users/luomat/Downloads/</string>
    </array>
</dict>
</plist>

Tentunya Anda ingin mengubah jalur dari /Users/luomat/apa pun $ HOME Anda.

Simpan plist itu untuk ~/Library/LaunchAgents/com.tjluoma.rename-dot-files.plistdan muat sebagai:

launchctl load ~/Library/LaunchAgents/com.tjluoma.rename-dot-files.plist

Script akan berjalan setiap kali ~ / Downloads / diubah, yang mencakup semua file yang ditambahkan atau dihapus, tetapi secara otomatis membatasi dirinya pada file yang dimulai dengan '.'

TJ Luoma
sumber
Nah, itu yang saya sebut jawaban yang bagus.
Ruskes
Perhatikan bahwa itu tidak harus di /usr/local/bin- itu bisa di mana saja, selama Anda menentukan path absolut ketika menjalankannya (seperti di .plist) atau meletakkan folder yang berisi di $ PATH (misalnya export PATH="$PATH:~/bin").
SilverWolf