স্ক্রিনে ভেরিয়েবলের সাথে কীভাবে আমার ব্যবহারকারীর নামটি প্রতিস্থাপন করবেন


9

আমি আমার হোম পিসির জন্য একটি ইনস্টল স্ক্রিপ্ট তৈরি করতে চাই এবং আমি এটি আরও নমনীয় করতে চাই।

কীভাবে বর্তমান ব্যবহারকারীর ভেরিয়েবলের সাথে আমার ব্যবহারকারীর নামটি প্রতিস্থাপন করবেন?

উদাহরণ: ডাউনলোড করুন: / হোম / এই / ডাউনলোড /


2
আপনি $HOMEবাড়ির $USERজন্য এবং ব্যবহারকারীর জন্য চলকটি ব্যবহার করতে পারেন :)
dadexix86

2
@ dadexix86 আপনি পাশাপাশি একটি উত্তর পোস্ট করতে পারেন। মন্তব্যগুলিতে সময় নষ্ট করার পক্ষে এই প্রশ্নটি খুব সস্তা
সের্গেই কলডিয়াজনি

@ সার্গ হ্যাঁ, তবে আমি নিশ্চিত যে এটি একটি নকল, এবং আমি আসলটি খুঁজছি :)
dadexix86

দ্রষ্টব্য যে ডাউনলোডগুলি ফোল্ডারটি কেবলমাত্র ইংরেজী সিস্টেমে বিদ্যমান। ব্যবহারকারী যদি আলাদা আলাদা স্থানীয়করণ চয়ন করেন তবে তারা নাম পরিবর্তন করতে পারেন।
বাইট কমান্ডার

ডাউনলোড কেবল উদাহরণস্বরূপ ছিল। ফাইলগুলি ইনস্টলের পরে মুছে ফেলা হবে। তবে দরকারী তথ্যের জন্য ধন্যবাদ
ফিক্সএক্সএক্সআর

উত্তর:


21

আপনি $HOMEবাড়ির $USERজন্য এবং ব্যবহারকারীর জন্য চলকটি ব্যবহার করতে পারেন ।

আপনার উদাহরণটি তখন হতে পারে $HOME/Downloadsবা /home/$USER/Downloads


10
সমস্ত ডিরেক্টরি হোম ডিরেক্টরিগুলির জন্য / হোম ব্যবহার করে না, তাই সর্বোত্তম অনুশীলন হ'ল আপনি যদি হোম ডিরেক্টরিটি উল্লেখ করে থাকেন তবে হোম ব্যবহার করা।
asmeurer

3
@ এসম্যুরার আমরা কেবল উবুন্টু এবং অফিসিয়াল ডেরাইভেটিভদের সাথেই ডিল করি। কোন ডিফল্ট সংস্করণ / হোম ব্যবহার করে না?
রিঞ্জউইন্ড

4
কেবল এই সাইটটি কেবল উবুন্টু সম্পর্কিত তাই এর অর্থ এই নয় যে আপনার পোর্টেবল কোড লেখা এবং সেরা অনুশীলনগুলি ব্যবহার করা এড়ানো উচিত।
asmeurer

15

আপনি যদি এটি করতে চান তবে আপনার ব্যবহার করা উচিত ...

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"

তাই হবে

echo $(xdg-user-dir DOWNLOAD)

এবং এটি ডিফল্ট ডাউনলোডের অবস্থানটি দেখায় (আমার ক্ষেত্রে /discworld/Downloads)। এই সমস্ত শব্দের জন্য কাজ করে। পছন্দ ...

echo $(xdg-user-dir DESKTOP)

এটি আসল সর্বজনীন উপায়, সর্বদা কাজ করে :)
জ্যাকব ভিলিজ

শুধু xdg-user-dir DOWNLOADযদি আপনি এটি মুদ্রণ করতে চান। : পি
কোস

moreকখন কী করবে !isatty(stdin)?
বিড়াল

@ জ্যাকবভিলিজম এমন সিস্টেম রয়েছে যেখানে এক্সডিজি-ব্যবহারকারী-ডায়ার ইনস্টল করা নেই। সম্ভবত উবুন্টুর অধীনে কম তবে এটি definitely হোম এবং OME ব্যবহারকারীর চেয়ে কম সর্বজনীন।
জাজপিপি

@ জাজপিপি যেহেতু আমরা জিজ্ঞাসা উবুন্টুতে রয়েছি, প্রশ্নের ক্ষেত্রের মধ্যে উপরের ব্যবহারকারীর ডিরেক্টরিগুলি সার্বজনীন, যদিও OME OME হোম / ডাউনলোডগুলি অবশ্যই নেই।
জ্যাকব ভিলিজম
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.