টার্মিনালের জন্য আইম্যাক্রোসের মতো প্রোগ্রাম?


0

ফায়ারফক্সের জন্য আইম্যাক্রস প্লাগইনের মতো টার্মিনালের জন্য এমন কোনও প্রোগ্রাম রয়েছে, যা আমি যা করেছি তা রেকর্ড করতে পারে, তারপরে আমি যে কাজটি করেছি তা স্বয়ংক্রিয়ভাবে কাজ করে? আমি আশা করি যে টার্মিনালে পুনরাবৃত্তি কাজ করতে আমাকে সহায়তা করার জন্য এমন কোনও প্রোগ্রাম আছে, তাই কোনও টিপস?

শুভেচ্ছা সহ

উত্তর:


1

গুগল খুঁজে বের করে এই । আপনি কি পরে আছেন?

আমি যদি মানুষের থেকে টিটিওয়াই ইন্টারঅ্যাকশনটি স্বয়ংক্রিয় করতে চাই তবে আমি এটি প্রত্যাশা ব্যবহার করে করব ।


আমি যা চেয়েছিলাম তা প্রত্যাশা করি! আপনাকে অনেক ধন্যবাদ। আমার ধারণাটি হ'ল tmux- এর ক্যাপচার-পেন এবং save_buffer ফাংশনগুলি দিয়ে টার্মিনালে আমি যা লিখেছি তা রেকর্ড করুন, তারপরে একটি পার্ল স্ক্রিপ্ট লিখুন একটি প্রত্যাশা স্ক্রিপ্ট তৈরি করে, যখন আমি পুনরাবৃত্তি কাজ করি, আমি শুধু স্ক্রিপ্ট চালাতে পারেন! এটা কি ভাল ধারণা? আবার ধন্যবাদ!
liunx

1

bashআপনার প্রয়োজনীয় সমস্ত ইউটিলিটি রয়েছে। আপনি যদি একক কমান্ডের সাহায্যে বেশ কয়েকটি কমান্ড প্রয়োগ করতে চান তবে আপনি নিজের শেল স্ক্রিপ্ট লিখতে পারেন বা ফাংশন লিখতে পারেন ।

কাজগুলি সহজ

কিছু দিন আগে, আমি csডিরেক্টরি পরিবর্তন করতে এবং এর মাধ্যমে তালিকাভুক্ত করার জন্য একটি ফাংশন সংজ্ঞায়িত করেছি ls

function cs() { cd $1 && ls ; }

$1প্রথম যুক্তি। আপনি যদি সমস্ত যুক্তির তালিকা ব্যবহার করতে চান তবে ব্যবহার করুন $@

এটি অনুরোধ করা যেতে পারে

$ cs my_directory

আপনার বর্তমান সেশনের অভ্যন্তরে বেশ কয়েকটি কমান্ড একসাথে গোষ্ঠীভুক্ত করা দুর্দান্ত। ~/.bashrcপ্রতিটি নতুন উদাহরণ সহ এটি লোড করতে আপনি আপনার শেষে ফাংশনটি রাখতে পারেন bash

স্ক্রিপ্টগুলি বেশ শক্তিশালী

স্ক্রিপ্টগুলি তাদের নিজস্ব প্রক্রিয়াতে কার্যকর করা হয়। এর অর্থ হ'ল আপনার নির্ধারিত কোনও পরিবর্তনশীল এই প্রক্রিয়াতে স্থানীয়। স্ক্রিপ্ট লিখতে, উপরে একটি শেবাং রাখুন । এটি #!দোভাষীর পথ অনুসরণ করে এমন অক্ষরগুলি নিয়ে গঠিত যা আপনার ফাইলটি কার্যকর করবে। শেবাংগুলি অন্তর্ভুক্ত করতে পারে

#!sh
#!/bin/bash
#!/usr/bin/perl

শেল স্ক্রিপ্টে আপনি এর মতো স্টাফ করতে পারেন

#!/bin/bash
VARIABLE=42
echo "The variable is $VARIABLE"  # echo appends a newline
echo "I'm now going to Google"
firefox http://www.google.com

মাধ্যমে স্ক্রিপ্ট সম্পাদনযোগ্য করতে ভুলবেন না

$ chmod +x my_script

এটি তখন কার্যকর করা যেতে পারে

$ ./my_script         # from the current directory
$ ~/path/to/my_script # absolute path, ~ is your User directory.

ব্যাশ সিনট্যাক্সে কন্ডিশনাল এবং লুপস এবং সুইচ এবং প্রায় কোনও কিছুই থাকে। আপনি যদি কম কর্মক্ষমতা ঘৃণা করেন বা আপনার যদি আরও ভাল সিন্টেক্স প্রয়োজন হয় তবে আপনি সহজেই পার্ল বা পাইথনের কয়েকটি লাইন শিখিয়ে নিতে পারেন।

আপনি কি টাইপ করেছেন তা দেখে

এই সমাধানগুলি করার আগে আপনি কী করতে চান তা নির্ভর করে। যদি এটি না হয় তবে আপনি ইতিহাসের ফাইলটি দেখতে ( ~/.bash_historyডিফল্টরূপে) বা historyআদেশটি ব্যবহার করতে পারেন ।

$ history 5

চলমান সংখ্যা সহ 5 টি সর্বশেষ কমান্ড তালিকাভুক্ত করে। আমার ক্ষেত্রে, এটি দেয়

 1892  function foo() { cd $1 ; ls ; }
 1893  foo ..
 1894  history
 1895  history 15
 1896  history 5

ফাংশন বা শেল স্ক্রিপ্ট লিখতে আপনি সহজেই এই কমান্ড তালিকাটি ব্যবহার করতে পারেন।

একটি দ্রুত হোমব্রু সমাধান

ম্যাক্রো রেকর্ডিংয়ের জন্য এখানে একটি সমাধান। আকর্ষণীয় প্রসেসিংয়ের জন্য এটি দুটি ব্যবহারকারী-সংজ্ঞায়িত ফাংশন এবং একটি ইনলাইন পার্ল স্ক্রিপ্ট ব্যবহার করে।

function create-marker() { echo "Starting the recording" ; }
function process-marker() { history | perl -ne's/^\s*\d*\s*//; chomp; push @commands, $_; }{ pop @commands; push @macro, pop @commands until $commands[-1] eq "create-marker" or !@commands; print "$_\n" for reverse @macro;' ; }

এই অধিবেশন

$ create-marker
Starting the recording
$ cd ~
$ ls
# omitted
$ firefox http://www.google.com
$ process-marker

নিম্নলিখিত আউটপুট তৈরি করে:

cd ~
ls
firefox http://www.google.com

তারপরে আপনি সহজেই এটিকে একটি নতুন স্ক্রিপ্টে অনুলিপি করতে পারেন।


দ্রষ্টব্য: আমার কাছে ম্যাক নেই এবং এটি উবুন্টুতে পরীক্ষা করা হয়েছে। পাথ পৃথক হতে পারে তবে ধারণাগুলি যথাযথ।


অনেক অনেক ধন্যবাদ, এটি সহায়ক, তবে আমি যখন এসএসএস সংযোগ বা সিরিয়াল সংযোগের সাথে ইন্টারেক্টিভ করি তখন আমরা ইতিহাসের সাহায্য নিতে পারি না, তাই না? সুতরাং ম্যাক্রো রেকর্ডারটি সীমাবদ্ধ হতে পারে তবে আপনাকে ধন্যবাদ সবাইকে!
লিওনাক্স

0

আপনি যদি ব্যবহারকারী না হন তবে আপনার আগ্রহের সম্ভাবনা নেই, তবে M-x shellইমাক্সের শেল মোড ( ) রয়েছে যা অবশ্যই কীবোর্ড ম্যাক্রো সহ ( C-x (রেকর্ডিং শুরু C-x )করতে, থামাতে, C-x eকার্যকর করতে) সহ সাধারণ ইমাস সম্পাদনা কমান্ডকে সমর্থন করে । যদি আপনি যা করছেন সবগুলি একগুচ্ছ টাইপিংয়ের পুনরাবৃত্তি করছে, এটি কার্যকর হতে পারে।

তবে আরও বিস্তৃতভাবে আমি বোবাহের সাথে একমত - আপনি যে সমস্যাটি সমাধান করার চেষ্টা করছেন তা আপনি বর্ণনা করেন না তবে এটি অবশ্যই কাঁচা ইনপুট জালিয়াতির চেয়ে প্রত্যাশার মতো সরঞ্জামগুলির পক্ষে আরও উপযুক্ত কিছু ...


0

আমি জানি তুমি টার্মিনাল এই বলছি, কিন্তু যেহেতু আমার, একটি বিকল্প would যেমন একটি প্রোগ্রাম সম্পর্কে না জেনে ZOC টার্মিনাল । এটি বাণিজ্যিক হয় তাই এটি আপনার ময়দানে নাও যেতে পারে তবে আপনার সমস্যার বিবরণ দিলে এটি আমি ভাবতে পারি এমন সবচেয়ে কাছের জিনিস। এটি ম্যাক ওএসে স্থানীয় শেল ব্যবহার করে সমর্থন করে (মূলত টার্মিনালের জন্য একটি প্রতিস্থাপন) এবং এতে স্ক্রিপ্ট রেকর্ডিং বৈশিষ্ট্য রয়েছে (স্ক্রিপ্ট-মেনু -> রেকর্ড স্ক্রিপ্ট)। আপনি এই স্ক্রিপ্টগুলি (বা সংক্ষিপ্ত পাঠ্য) বোতাম এবং কী সংমিশ্রণেও মানচিত্র করতে পারেন।

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