কীভাবে একটি বিচ্ছিন্ন tmux সেশন মুছবেন?


25

আমি নিজেকে টিএমএক্স সেশন থেকে আলাদা করেছিলাম:

$ tmux ls
0: 1 windows (created Thu Aug 22 22:52:17 2013) [218x59]

আমি কি এখন এটিকে মুছে ফেলতে পারি যে আমি এখান থেকে আলাদা হয়েছি?


সম্পর্কিত: আপনি যদি এখনও কোনও টিএমউक्स সেশনে যুক্ত থাকেন তবে আপনি এটি থেকে আলাদা করতে সিডি (কন্ট্রোল + ডি) তে চাপ দিতে পারেন এবং এটি মুছতে মুছতে মুছতে পারেন। (ধরে
নিচ্ছেন

উত্তর:


41

আপনি ব্যবহার করতে চান tmux kill-session:

<~> $ tmux ls
0: 1 windows (created Sat Aug 17 00:03:56 2013) [80x23]
2: 1 windows (created Sat Aug 24 16:47:58 2013) [120x34]

<~> $ tmux kill-session -t 2

<~> $ tmux ls
0: 1 windows (created Sat Aug 17 00:03:56 2013) [80x23]

2

আপনি যদি সমস্ত বিচ্ছিন্ন সেশনগুলি মুছতে চান তবে নীচের কোডটি ব্যবহার করতে পারেন:

tmux list-sessions | grep -E -v '\(attached\)$' | while IFS='\n' read line; do
    tmux kill-session -t "${line%%:*}"
done

এই সমাধানটি অ্যাইইলারের প্রস্তাবিতের চেয়ে বেশি শক্তিশালী কারণ grep -E -v '\(attached\)$'কেবল বিযুক্ত সেশনের সাথে মেলে (অ্যাবিলার দ্বারা সমাধানটি সংযুক্ত নামক একটি বিচ্ছিন্ন অধিবেশন এড়িয়ে যাবে )।


0

আপনি যদি সমস্ত বিচ্ছিন্ন সেশন মারতে চান

tmux list-sessions | grep -v attached | cut -d: -f1 |  xargs -t -n1 tmux kill-session -t

মন্তব্য / ব্যাখ্যা সহ:

tmux list-sessions   | # list all tmux sessions
  grep -v attached   | # grep for all lines that do NOT contain the pattern "attached"
  cut -d: -f1        | # cut with the separator ":" and select field 1 (the session name)
  xargs -t -n1       ` # -t echoes the command, -n1 limits xargs to 1 argument ` \
  tmux kill-session -t # kill session with target -t passed from xargs

1
আপনি এখানে যা করছেন তার কিছু বর্ণনা রাখতে পারেন? এছাড়াও, এটি সমস্ত সংযুক্ত অধিবেশনকে হত্যা করবে , আপনার এটি নোট করা উচিত।
djsmiley2k - CoW

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