Я использовал массив PHP
$lang['module']['1'] = 'Title';
$lang['module']['2'] = 'Title2';
$lang['value'] = 'text123';
как я могу использовать замену в терминале Key Value на CASE UPPER?
$lang['VALUE']
$lang['MODULE']['1']
$lang['MODULE']['2']
и т.д...
рекурсия
find /var/www/site.net/blog/ -iname '*.php' | xargs grep -E '\$lang\[' -sl
найдено только $lang[ ...
Пожалуйста, помогите мне.
решение1
find /var/www/site.net/blog/ -iname '*.php' -exec grep -l "\$lang\['" {} \; \
-exec sed -i.bak "s/$lang\['\([^']*\)']/$lang['\U\1']/" {} \;
-i
опция используется с .bak
для создания резервной копии файла с .bak
расширением, которое будет меняться для каждого файла sed
. Это полезно в случае, если есть тип sed
и вы не потеряете все свои данные. Если вы уверены, что все в порядке, вы можете использовать просто -i
. В этом случае резервная копия не будет создана.