Bir komut dosyasındaki kullanıcı adımı değişkenle nasıl değiştirebilirim?


9

Ev bilgisayarım için bir yükleme komut dosyası yapmak istiyorum ve daha esnek hale getirmek istiyorum.

Kullanıcı adımı mevcut kullanıcı değişkeniyle nasıl değiştirebilirim?

Örnek: download to: / home / THISUSER / İndirilenler /


2
Değişkeni $HOMEev ve $USERkullanıcı için kullanabilirsiniz :)
— dadexix86

2
@ dadexix86 bir cevap da gönderebilirsiniz. Bu soru yorumlarda zaman kaybetmek için çok ucuz
— Sergiy Kolodyazhnyy

@ Evet, ama bunun bir kopya olduğundan neredeyse eminim ve orijinalini arıyorum :)
— dadexix86

İndirilenler klasörünün yalnızca İngilizce sistemlerde bulunduğunu unutmayın. Kullanıcı farklı bir yerelleştirme seçerse yeniden adlandırılabilirler.
— Bayt Komutanı

indirme sadece örnek olarak yapıldı. Yüklendikten sonra dosyalar silinecek. Ancak yararlı bilgiler için teşekkürler
— FixXxeR

Yanıtlar:


21

Değişkeni $HOMEev ve $USERkullanıcı için kullanabilirsiniz.

Daha sonra örneğiniz $HOME/Downloadsveya olabilir /home/$USER/Downloads.


10
Tüm sistemler ev dizinleri için / home komutunu kullanmaz, bu nedenle en iyi uygulama, home dizinine başvuruyorsanız $ HOME kullanmaktır.
— asmeurer

3
@asmeurer sadece Ubuntu ve resmi türevlerle ilgileniyoruz. Hangi varsayılan sürüm / home kullanmaz?
— Rinzwind

4
Bu sitenin sadece Ubuntu ile ilgili olması, taşınabilir kod yazmaktan ve en iyi uygulamaları kullanmaktan kaçınmanız gerektiği anlamına gelmez.
— asmeurer

15

Bunu yapmak istiyorsanız şunu kullanmalısınız ...

more ~/.config/user-dirs.dirs
# This file is written by xdg-user-dirs-update
# If you want to change or add directories, just edit the line you're
# interested in. All local changes will be retained on the next run
# Format is XDG_xxx_DIR="$HOME/yyy", where yyy is a shell-escaped
# homedir-relative path, or XDG_xxx_DIR="/yyy", where /yyy is an
# absolute path. No other format is supported.
# 
XDG_DESKTOP_DIR="/discworld/Desktop"
XDG_DOWNLOAD_DIR="/discworld/Downloads"
XDG_TEMPLATES_DIR="/discworld/Templates"
XDG_PUBLICSHARE_DIR="/discworld/Public"
XDG_DOCUMENTS_DIR="/discworld/Documents"
XDG_MUSIC_DIR="/discworld/Music"
XDG_PICTURES_DIR="/discworld/Pictures"
XDG_VIDEOS_DIR="/discworld/Videos"

yani bu olur

echo $(xdg-user-dir DOWNLOAD)

ve varsayılan indirme konumunu gösterecektir (benim durumumda /discworld/Downloads). Tüm bu kelimeler için çalışır. Sevmek ...

echo $(xdg-user-dir DESKTOP)

Bu gerçek evrensel yoldur, her zaman işe
— yarar

Sadece xdg-user-dir DOWNLOADyazdırmak istiyorsanız. : P
— kos

Ne morezaman yapılır !isatty(stdin)?
— kedi

@JacobVlijm xdg-user-dirs yüklü olmayan sistemler var. Muhtemelen Ubuntu altında daha az, ancak $ HOME ve $ USER kullanmaktan kesinlikle daha az evrensel.
— jazzpi

@jazzpi Ask Ubuntu'da olduğumuzdan , yukarıdaki kullanıcı dizinleri soru kapsamındaki evrenseldir, ancak '$ HOME / Downloads' kesinlikle değildir.
— Jacob Vlijm
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.