On 06-Sep-2015 01:49 -0600, gio.cot wrote:
I have problem with $-£-§ in running QSH commands; example if I run
QSH CMD('rm -r NAS_TMP/$$X')
Before doing anything else, the language environment for the job
should be established for the appropriate CCSID [for _your_ preferred
operating language]. Then hopefully the appropriate glyphs will appear
for the typed characters at the workstation [in the 5250 emulation].
To establish the proper language environment, ensure user profile
attributes for the CCSID(), LANGID(), and CHRIDCTL() values are setup
consistently [see: Change Profile (CHGPRF) command], and that the
Display Device [see: Change Device Display (CHGDEVDSP) command] is
similarly consistent for both the Character Identifier [Graphic
Character Set and Code Page] (CHRID) setting and Keyboard Language Type
(KBDTYPE) setting. Typically the device attributes would be a
reflection the setup for the emulator session, so the configuration of
the emulation might be appropriate.
I receive :
rm: 001-2136 in relief error during the elimination of the
connection to the object NAS_TMP/354X. This path or address doesn't
exist.
If the visible glyph '$' from the failing request had represented an
actual dollar-sign, then the above request, I would have expected,
should have failed with "rm: 001-3018 usage: rm...". Given the error
was instead, a "not found" condition, that implies the language
environment for the job was incorrect\inconsistent. However...
The replacement text shown from the error seems inconsistent with the
actual request; i.e. there seems almost no chance, that the '$$'
characters would have been translated into '345'. Perhaps the
copied\pasted text was taken from two separate ¿similarly? failing
requests.?
I can I solve this problem with Qsh commands ?
Obtaining the name from a directory listing request such as the ls
request, to be used as piped input to the rm request, should resolve the
issue, because the user is not /typing/ the characters.
Another option, outside of QSH, is to use the EDTF CL command, issued
against the directory name, and then use the 9=Recursive Delete against
what should be removed; selected from the UI, again rather than /typed/
characters by the user, the request should be understood.
For the particular request [after correcting the language
environment], if the the dollar-sign as the visible glyph does indeed
represent the dollar-sign, then there would be the added requirement to
modify the request to "escape" those dollar-sign characters with the
backslash character [to tell the interpreter that the character
following the escape character is text; the actual $ character has an
alternate meaning to the interpreter, so the /escaping/ of the character
identifies that the character is text, to override the alternate meaning]:
QSH CMD('rm -r NAS_TMP/$\$\X')
unfortunately in my System I we have Library and other obj that
begin with this characters
Ugh. But at least by assigning the appropriate\consistent language
settings for the device and user profile, that should help alleviate
some difficulties.
As an Amazon Associate we earn from qualifying purchases.