அம்சங்கள்

குறுக்குவழிக் கட்டளைகள்

கடைசியாகப் புதுப்பித்தது 19 அக்டோபர், 2026
ccam 0.6.0 மற்றும் Claude Code 2.1.302 உடன் சரிபார்க்கப்பட்டது

இந்தப் பக்கம் ஆங்கிலத்திலிருந்து இயந்திரம் மூலம் மொழிபெயர்க்கப்பட்டது. திருத்தங்கள் வரவேற்கப்படுகின்றன. இந்தப் பக்கத்தை GitHub-இல் திருத்துங்கள்

இந்தப் பக்கத்தில்

குறுக்குவழி என்பது ஒரு கணக்காக Claude Code-ஐத் தொடங்க நீங்களே பெயரிடும் கட்டளை: ccam work --resume செய்வதையே ccwork --resume செய்யும். அது ~/.local/bin-இல் உள்ள ccam-க்கான ஓர் இணைப்பு, அதனால் bash, zsh, scripts, PATH-இலிருந்து நிரல்களை இயக்கும் வேறு எதிலும் அது வேலை செய்யும். குறுக்குவழிகள் விருப்பத்தேர்வு மட்டுமே; நீங்கள் அடிக்கடி தொடங்கும் கணக்குகளுக்கு ஒன்றை உருவாக்குங்கள்.

பயன்பாடு

ccam shortcut work ccwork     # create the shortcut ccwork for work
ccam shortcut 2 ccside        # the account with number 2
ccam shortcut work            # show it
ccam shortcut work ccw        # rename it; the old link is removed
ccam shortcut work --remove   # delete it
ccam add side --shortcut ccside
ccam shims install            # recreate missing links of all accounts
ccwork -p "summarise" --output-format json

ccam ஒவ்வொரு மாற்றத்தையும் உறுதிப்படுத்தும்:

$ ccam shortcut work ccwork
✓ shortcut for work: ccwork
$ ccam shortcut work ccw
✓ shortcut for work: ccw (was ccwork)
$ ccam shortcut work --remove
✓ ccw removed; work has no shortcut now
$ ccam shortcut work
work: none (add one with `ccam shortcut work ccwork`)

ஒரு கணக்குக்கு அதிகபட்சம் ஒரு குறுக்குவழி மட்டுமே இருக்கும்; அது ~/.config/ccam/config.toml-இல் shortcut ஆகச் சேமிக்கப்படும். ccam add wizard முதலில் Create a shortcut command for <name>? [y/N] என்றும், பிறகு Shortcut name [cc<name>]: என்றும் கேட்கும். wizard-க்கு வெளியே, --shortcut கொடுத்தால் மட்டுமே ccam add ஒன்றை உருவாக்கும். ccam list ஒவ்வொரு கணக்கின் குறுக்குவழியையும், இல்லையென்றால் --ஐயும் காட்டும்.

ccam <name> பெயருக்குப் பின் உள்ளவற்றை அனுப்புவது போலவே, குறுக்குவழி ஒவ்வொரு argument-ஐயும் Claude Code-க்கு அனுப்பும். இதில் --dry-run மற்றும் --help-உம் அடங்கும்: ஒரு தொடக்கத்தை முன்னோட்டமாகப் பார்க்க ccam --dry-run work பயன்படுத்துங்கள்.

Options

Option என்ன செய்யும் இயல்புநிலை
--remove கணக்கின் குறுக்குவழியையும் அதன் இணைப்பையும் நீக்கும் off
-h, --help கட்டளைக்கான உதவி
--dry-run ccam shortcut இதை மதிக்கும்: பெயரைச் சரிபார்த்து, சேமிக்காமலும் இணைக்காமலும் Would set the shortcut of work to ccwork. அல்லது Would remove ccwork, the shortcut of work. என்று அச்சிடும் off

ccam shims install எந்த argument-ஐயும் ஏற்காது, --dry-run-ஐ ccam: --dry-run is not supported by `ccam shims install`; nothing was changed என்று மறுக்கும்.

பெயர் விதிகள், இந்த வரிசையில் சரிபார்க்கப்படும்:

  • a-z, 0-9, ., -, _ ஆகியவற்றால் ஆன 1 முதல் 64 எழுத்துகள், ஓர் எழுத்து அல்லது இலக்கத்தில் தொடங்க வேண்டும்;
  • ccam, claude, அல்லது run, usage போன்ற ccam கட்டளையாக இருக்கக் கூடாது;
  • மற்றொரு கணக்கின் குறுக்குவழியாக இருக்கக் கூடாது;
  • ஏற்கெனவே ccam-க்கான இணைப்பாக இல்லாத, ~/.local/bin-இல் உள்ள கோப்பாக இருக்கக் கூடாது;
  • உங்கள் PATH-இல் உள்ள வேறொரு executable-இன் பெயராக இருக்கக் கூடாது.

ஒரு கட்டளையையும் --remove-ஐயும் சேர்த்துக் கொடுத்தால் give a command or --remove, not both என்று நின்றுவிடும். ஒரு கணக்கிடம் ஏற்கெனவே உள்ள பெயரையே அமைத்தால் work: ccwork (unchanged) என்று அச்சிட்டு, இணைப்பு இல்லையென்றால் அதை மீண்டும் உருவாக்கும்.

இது எப்படி வேலை செய்கிறது

பெயரை அமைக்கும்போது checkShortcut இயங்குகிறது; அது bin கோப்புறையையும் ccam binary-இன் உண்மையான பாதையையும் கொடுத்து shim.Check-ஐ அழைக்கிறது:

பெயர் சரிபார்ப்புகளை வரிசையாகக் கடந்து செல்கிறது. ஒவ்வொரு சரிபார்ப்பின் அருகிலும் அது மறுக்கும் ஒரு பெயர் உள்ளது: Work pattern-இல் தோல்வியடைகிறது, run ஒரு ccam கட்டளை, ccside மற்றொரு கணக்குக்குச் சொந்தமானது, ccfile என்பது ~/.local/bin-இல் ஏற்கெனவே உள்ள கோப்பு, git ஆனது /usr/bin/git-ஐ மறைத்துவிடும். எல்லாச் சரிபார்ப்புகளையும் கடக்கும் பெயர் மட்டுமே சேமிக்கப்பட்டு இணைக்கப்படும்.

  1. shim.Check பெயரை முதலில் ^[a-z0-9][a-z0-9._-]{0,63}$-உடனும், பிறகு config.Reserved, cfg.FindShortcut ஆகியவற்றுடனும் ஒப்பிடுகிறது. அது ~/.local/bin/<name>-இல் os.Lstat-ஐ அழைக்கிறது, PATH-இல் உள்ள மற்ற ஒவ்வொரு கோப்புறைக்கும் os.Stat-ஐ அழைத்து, ccam-க்கான இணைப்பாக இல்லாத executable கோப்பை மறுக்கிறது.
  2. ccam fsutil.AtomicWrite மூலம் (தற்காலிகக் கோப்பு, fsync, rename) config.toml-ஐச் சேமிக்கிறது.
  3. shim.Remove பழைய குறுக்குவழியின் இணைப்பை நீக்குகிறது, ஆனால் அது ccam-க்கான இணைப்பாக இருந்தால் மட்டுமே.
  4. shim.Install அமைக்கப்பட்ட ஒவ்வொரு குறுக்குவழியிலும் இல்லாத இணைப்பை, os.Executable மற்றும் filepath.EvalSymlinks மூலம் கண்டறிந்த ccam binary-க்கு os.Symlink கொண்டு உருவாக்குகிறது. அது ஒருபோதும் எதையும் நீக்குவதில்லை.

os.Readlink ccam பாதையைத் திருப்பித் தந்தால், அல்லது இணைப்பும் ccam பாதையும் ஒரே கோப்பைச் சுட்டினால், அந்த இணைப்பு ccam-இன் சொந்த இணைப்பாகக் கருதப்படும். ஒவ்வொரு நீக்கமும் ஒவ்வொரு மேலெழுதல் சரிபார்ப்பும் இந்தச் சோதனை வழியாகச் செல்கின்றன, அதனால் தான் உருவாக்காத கோப்புகளை ccam தொடுவதில்லை.

ஒரு குறுக்குவழியை இயக்கும்போது, நீங்கள் தட்டச்சு செய்த பெயர் மட்டுமே ccam-க்குத் தேவை:

shell PATH-இல் ccwork-ஐக் கண்டுபிடிக்கிறது, kernel இணைப்பைப் பின்தொடர்ந்து ccam binary-ஐத் தொடங்குகிறது, argv[0] இன்னும் ccwork ஆகவே இருக்கிறது. app.Main-இல், ccam அல்லாத எந்தப் பெயரும் config.toml-ஐ ஒருமுறை ஏற்றி shim.Lookup-ஐ அழைக்கிறது; அது shortcut மதிப்பு filepath.Base(argv[0])-க்குச் சமமான கணக்கைக் கண்டுபிடிக்கிறது. பிறகு launcher.LaunchWith, ஏற்கெனவே ஏற்றப்பட்ட config-உடன் ccam <name> எடுக்கும் அதே படிகளை எடுத்து, argv[1:]-ஐ மாற்றாமல் claude-க்கு அனுப்புகிறது.

shell alias அல்லது wrapper script-க்குப் பதிலாக ஏன் symlink: symlink ஒவ்வொரு shell-இலும் scripts-இலும் வேலை செய்யும், கூடுதல் shell தொடக்கத்தைச் (சுமார் 1 முதல் 2 ms) சேர்க்காது, தொடக்கம் இன்னும் ஒரே ஒரு கோப்பைப் படிக்கும். scripts/perf-check.sh ஒரு குறுக்குவழியை hyperfine மூலம், ccam <name>-க்கான அதே 10 ms (p95) வரம்புக்கு எதிராக அளவிடுகிறது.

பாதுகாப்பும் விளிம்பு நிலைகளும்

  • எந்தக் கணக்கும் உரிமை கோராத இணைப்பு. ~/.local/bin-இல் உள்ள ccam-க்கான ஓர் இணைப்பின் பெயரை எந்தக் கணக்கும் பயன்படுத்தவில்லை என்றால், எடுத்துக்காட்டாக config.toml-இல் shortcut-ஐ நீங்கள் கையால் திருத்திய பிறகு, ccam இயல்புநிலைக் கணக்குக்கு மாறாது. அது ccam: ccold is not the shortcut of any account (see `ccam list`, `ccam shortcut`) என்று நின்றுவிடும். ccam shortcut மூலம் பெயரை மீண்டும் அமையுங்கள், அல்லது இணைப்பை நீக்குங்கள்.
  • ஏற்கெனவே உள்ள கோப்புகள். தான் உருவாக்காத கோப்பை ccam ஒருபோதும் மாற்றுவதில்லை. ccam shims install <path> already exists and is not a ccam link, so it was left alone என்று நின்றுவிடும்.
  • நகர்த்தப்பட்ட ccam binary. அப்போது பழைய இணைப்புகள் இனி இல்லாத பாதையைச் சுட்டும், ccam அவற்றைத் தன்னுடையவையாகக் கருதாது. அவற்றை நீக்கிவிட்டு, ccam shims install-ஐ இயக்குங்கள்.
  • பெயர் மாற்றமும் நீக்கமும். ccam rename குறுக்குவழிப் பெயரை வைத்திருக்கும், இணைப்பும் தொடர்ந்து வேலை செய்யும், ஏனெனில் அது ccam-ஐச் சுட்டுகிறது, ccam பெயரை config.toml-இல் தேடுகிறது. ccam remove கணக்கின் இணைப்பை நீக்கும். ccam shortcut <account> <new> புதியதை உருவாக்கும் முன் பழைய இணைப்பை நீக்கும்.
  • PATH. ccam ஓர் இணைப்பை உருவாக்கும்போது ~/.local/bin உங்கள் PATH-இல் இல்லையென்றால், அது Note: /home/me/.local/bin is not in PATH. Add it to ~/.bashrc or ~/.zshrc: என்றும், அதைத் தொடர்ந்து சேர்க்க வேண்டிய export PATH=... வரியையும் அச்சிடும்.
  • பின்னர் சரிபார்த்தல். ccam doctor missing shortcuts in /home/me/.local/bin: ccwork என்று தெரிவிக்கும், கோப்புறை PATH-இல் இல்லையென்றால் எச்சரிக்கும். ccam doctor --fix இல்லாத இணைப்புகளை உருவாக்கும்.