আমি জিজ্ঞাসা উবুন্টুতে একটি উত্তর সম্পাদনা করেছি যা নীচের পরামর্শ দিচ্ছে
nohup gedit >& /dev/null &
যখন তারা আসলে বোঝানো হয়েছে
nohup gedit &> /dev/null &
পরেরটি সঠিকভাবে স্ট্যাডার এবং স্টাডআউট উভয়ই পুনর্নির্দেশ করে /dev/null
। আমি প্রত্যাশা করছিলাম যে প্রাক্তন হয় হয় একটি নামক একটি ফাইল তৈরি করবে &
বা সম্ভবত এটি অন্য ক্ষেত্রে যেমন একটি ত্রুটি দেবে:
$ echo "foo" >&
bash: syntax error near unexpected token `newline'
পরিবর্তে, এটি ঠিক আগের মতো কাজ করবে বলে মনে gedit
হচ্ছে , একটি উইন্ডো উপস্থিত হবে এবং কোনও ত্রুটি বার্তা প্রিন্ট করা হয়নি।
আমার এটিও লক্ষ্য করা উচিত যে এটি শেল নির্দিষ্ট:
bash
(৪.২.৪৫ (১) -রিলেজ),zsh
(.0.০.২),csh
(ডিবে প্যাকেজ সংস্করণ: 20110502-2) এবংtcsh
(6.18.01): উপরে বর্ণিত হিসাবে কাজ করে, কোনও ত্রুটি বার্তা নেই, কোনও ফাইল তৈরি হয়নি।dash
(0.5.7-3):$ nohup gedit >& /dev/null & $ dash: 2: Syntax error: Bad fd number
ksh
(93u + 2012-08-01): ব্যর্থ হয়, তবে একটি প্রক্রিয়া স্পষ্টতই শুরু হয় (1223
) যদিও কোনওgedit
উইন্ডো প্রদর্শিত না:$ nohup gedit >& /dev/null & [1] 1223 $ ksh: /dev/null: bad file unit number
fish
(2.0.0):> nohup gedit >& /dev/null & fish: Requested redirection to something that is not a file descriptor /dev/null nohup gedit >& /dev/null & ^
সুতরাং, কেন এই কমান্ডটি কিছু শেলগুলিতে কোনও ত্রুটি (এবং কোনও আউটপুট ফাইল তৈরি হয়নি) দিয়ে চালানো হয় এবং অন্যগুলিতে ব্যর্থ হয়? >&
আপাতদৃষ্টিতে বিশেষ ক্ষেত্রে কী করছেন nohup
? আমি অনুমান করছি যে >& /dev/null
এটি ব্যাখ্যা করা হচ্ছে >&/dev/null
তবে স্থান কেন এই শেলগুলিতে ত্রুটি সৃষ্টি করে না?
nohup command
আমার স্মৃতি, আপনার application.According চালানো স্বাধীন TTY dash
বর্ধিত ash
, Debian ash
, ash
দ্বারা উন্নত OpenBSD
এবং এটি সীমিত শেল, এমনকি Maemo অপারেটিং সিস্টেম ড্যাশ ব্যবহার (n900 মোবাইলে ডেবিয়ান বেজ) এর ash
পরিবার শেল সীমিত ব্যবহার ব্যাশ বা tcsh শেল এর আশা আছে।
dash
এটির সংস্করণটি প্রিন্ট করতে পারি তা বুঝতে পারি না তবে প্যাকেজটি কী 0.5.7-3
, আপনার কী? এছাড়াও, আপনি কি নিশ্চিত যে আপনি চালাচ্ছেন dash
? ওবুন্টুর ডিফল্ট sh
তাই না?
nohup
হয়, আমার প্রশ্নটি কেন কিছু শাঁসে নোহুপের >&
সাথে একা কাজ করতে দেখা যাচ্ছে।
dash
।