Ssh কনফিগারেশন ফাইলে রিমোট কমান্ড


12

আমি ssh_config সেট করতে চাই ঠিক টাইপ করার পরে ssh my_hostnameআমি নির্দিষ্ট ফোল্ডারে শেষ করতে পারি। আমি যেমন টাইপ করব cd /folder/another_one/much_much_deeper/

আমি কীভাবে এটি অর্জন করতে পারি?

সম্পাদনা করুন। এটা সদৃশ হিসাবে চিহ্নিত করা হয়েছে এর "কিভাবে Dir মধ্যে SSH ... থেকে" এখনো এটা না আমার প্রশ্ন।

আমি জানি যে আমি কোনও কমান্ডকে কমান্ডের সাথে লেজু করে নির্বাহ করতে পারি ssh। আমার প্রশ্নটি /ssh_configফাইলটি সম্পর্কে নয় আদেশটি নয়।


আমি আমার প্রশ্নটি পরিষ্কার করে দিয়েছি।
কাজজ

এটি সম্পর্কে কিছুই নেই man ssh_config। নিকটতমটি লোকালকম্যান্ড তবে এটি ইন্টারেক্টিভ কমান্ডের জন্য ব্যবহার করা যাবে না।
লার্জ

1
দয়া করে আপনি ব্যাখ্যা করতে পারেন (আপনার প্রশ্নে) আপনি কেন পরিবর্তনটি করা উচিত বলে মনে করেন ssh_config? প্রারম্ভিক ডিরেক্টরিটি কনফিগার করার জন্য সম্ভবত আরও ভাল জায়গা রয়েছে এবং সম্ভাব্য সমাধানের ক্ষেত্রে কেন এই নির্দিষ্ট সীমাবদ্ধতা রয়েছে তা বোঝা সহায়ক হবে।
রোয়াইমা

1
"এটি এতে করা যায় না" এই সত্যটি এটি ssh_config"ডাব এ এটি করুন" এর সদৃশ করে না। "আপনি এটি করতে পারবেন না" একটি সঠিক বৈধ উত্তর।
ফ্র্যাংকলিন ইউ

1
@ ইটারডন তবে সময়ের সাথে সাথে "এটি সম্ভব নয়" ঘটনাটিও পরিবর্তিত হতে পারে। হ্যাঁ, এখনই এটি সম্ভব। এখন আমার (পাশাপাশি ভবিষ্যতে যে কেউ এটি দেখতে আসবে) এর একটি নতুন উত্তর দরকার, এবং আমরা এখানে আটকে যাই। যদি এটি পুনরায় খোলা না থাকে, আমি কল্পনা করতে পারি যে পছন্দসই পথটি একটি নতুন প্রশ্ন তৈরি করবে (এবং এর উত্তর দেবে)?
ফ্রাঙ্কলিন ইউ

উত্তর:


19

ওপেনএসএসএইচ 7.6 পর্যন্ত এটি করার কোনও উপায় ছিল না । ম্যানুয়াল থেকে :

RemoteCommand

সার্ভারের সাথে সফলভাবে সংযুক্ত হওয়ার পরে দূরবর্তী মেশিনে চালিত করার জন্য একটি কমান্ড নির্দিষ্ট করে। কমান্ড স্ট্রিংটি লাইনের শেষ প্রান্তে প্রসারিত হয় এবং ব্যবহারকারীর শেল দিয়ে সম্পাদিত হয়। RemoteCommandটোকেন বিভাগে বর্ণিত টোকেনগুলি গ্রহণ করার যুক্তি gu

সুতরাং এখন আপনি করতে পারেন

RemoteCommand cd /tmp && bash

এটি এই প্রতিশ্রুতিবদ্ধ মধ্যে চালু করা হয়েছিল ।


5
যোগ RequestTTY forceযদি দূরবর্তী কমান্ড একটি Tty প্রয়োজন। উদাহরণস্বরূপ:tmux new -As my-session
অ্যারন ব্লেনকুশ

এটি হত্যাকারী sshবিকল্পটি ধন্যবাদ!
অবধি

এটি অন্যান্য কমান্ড চালানো অসম্ভব করে তোলে, উদাহরণস্বরূপ ssh my_hostname lsএটি ব্যর্থ হবে Cannot execute command-line and remote command.। এটি অন্যান্য সরঞ্জামগুলিতে গিট এবং আরএসএনসি-র মতো এসএসএস ব্যবহার করেও ব্যর্থ হয়।
রিরাম্রাম

2

আমি শুধু ssh my_hostname টাইপ করার পরে ssh_config সেট করতে চাই

এটা সম্ভব নয়. এটি অর্জন করার কোনও বিকল্প নেই ssh_config। এর নিকটতমতমটি হ'ল বাশ ওরফে বা ব্যাশ ফাংশন স্থাপন করছে, যেমন

myssh() {
    ssh -t $1 "cd /dir/; bash"
}

1

সোমোইন এটির আসল বিষয়টি উল্লেখ করার আগে আমি আলাদা টিকিটে প্রতিক্রিয়া জানালাম।

যদি ম্যাক ব্যবহার করা হয় তবে আমার সুপারিশটি হ'ল আইটিার্ম 2 ব্যবহার করুন এবং একটি প্রোফাইল তৈরি করুন। ssh my_hostnameকমান্ড লাইনে রাখুন এবং তারপরে cd /folder/another_one/much_much_deeper/প্রারম্ভের ক্ষেত্রের প্রেরণ পাঠ্যে কমান্ডটি যুক্ত করুন । আপনি যখন সেশনগুলির সাথে সংযোগ স্থাপন করবেন এটি আপনার হোস্টনামে ssh হবে এবং আপনার ক্ষেত্রে ডিরেক্টরিতে সিডি হবে, বা একটি আদেশ কার্যকর করবে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.